:root { --ink:#20352f; --coral:#ff8e7d; --cream:#fffaf4; --line:#e8e1d9; --muted:#718078; --green:#4f8d72; --surface:#fff; --shadow:0 18px 55px rgba(57,76,68,.08); }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; color:var(--ink); background:radial-gradient(circle at 0 0,rgba(255,142,125,.11),transparent 28rem),#f8f4ef; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
button,input,select,textarea { font:inherit; }
main { width:min(1440px,calc(100% - 48px)); margin:0 auto; padding:32px 0 56px; }
.system-notice{position:fixed;z-index:99;left:50%;top:18px;transform:translateX(-50%);padding:12px 18px;border-radius:12px;color:white;background:#b95f56;box-shadow:var(--shadow);font-size:13px;font-weight:700}
.hidden { display:none !important; }
.login-card { display:grid; grid-template-columns:1.04fr .96fr; width:min(1040px,100%); min-height:650px; margin:2vh auto 0; overflow:hidden; border:1px solid rgba(32,53,47,.07); border-radius:34px; background:white; box-shadow:0 32px 100px rgba(57,76,68,.14); }
.login-visual { position:relative; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; padding:42px; color:white; background:linear-gradient(145deg,#ff9e8e 0%,#f68c82 48%,#e77777 100%); }
.login-visual::after { content:""; position:absolute; right:-90px; bottom:-100px; width:330px; height:330px; border:1px solid rgba(255,255,255,.25); border-radius:50%; box-shadow:0 0 0 35px rgba(255,255,255,.06),0 0 0 75px rgba(255,255,255,.04); }
.cloud { position:absolute; width:150px; height:54px; border-radius:50px; background:rgba(255,255,255,.12); filter:blur(.2px); }.cloud::before,.cloud::after{content:"";position:absolute;border-radius:50%;background:inherit}.cloud::before{width:70px;height:70px;left:22px;bottom:8px}.cloud::after{width:90px;height:90px;right:10px;bottom:0}.cloud-one{top:130px;right:-40px}.cloud-two{bottom:170px;left:-75px;transform:scale(.7)}
.visual-brand,.mobile-brand { position:relative; z-index:1; display:flex; align-items:center; gap:12px; font-family:Georgia,serif; font-size:24px; }.visual-brand .mark{background:white;color:var(--coral)}
.visual-copy { position:relative; z-index:1; max-width:430px; }.soft-pill{display:inline-flex;padding:9px 13px;border:1px solid rgba(255,255,255,.24);border-radius:99px;background:rgba(255,255,255,.1);font-size:11px;font-weight:700}.visual-copy h2{margin:20px 0 16px;font-family:Georgia,serif;font-size:43px;font-weight:500;line-height:1.08;letter-spacing:-.035em}.visual-copy h2 em{color:#fff3d7;font-weight:500}.visual-copy p{max-width:370px;margin:0;color:rgba(255,255,255,.76);font-size:13px;line-height:1.8}
.visual-card { position:relative; z-index:1; display:grid; gap:5px; width:280px; padding:18px 20px; border:1px solid rgba(255,255,255,.25); border-radius:18px; background:rgba(255,255,255,.12); backdrop-filter:blur(10px); }.visual-card span,.visual-card small{color:rgba(255,255,255,.68);font-size:10px}.visual-card strong{font-family:Georgia,serif;font-size:18px}
.login-panel { display:flex; flex-direction:column; justify-content:center; padding:62px; }.mobile-brand{display:none}.login-panel .eyebrow{margin-top:0}.login-panel h1{font-size:46px}.login-panel .muted{margin:12px 0 0}
.mark { display:grid; place-items:center; width:48px; height:48px; border-radius:16px; color:white; background:var(--coral); font-family:Georgia,serif; font-size:26px; }
.eyebrow { margin:22px 0 8px; color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.14em; }
h1 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:42px; font-weight:500; }
.muted,.message { color:var(--muted); }
form { display:grid; gap:18px; margin-top:34px; }
label { display:grid; gap:7px; font-size:12px; font-weight:700; }
input,select,textarea { width:100%; border:1px solid var(--line); border-radius:12px; outline:none; color:var(--ink); background:white; }
input,select { min-height:48px; padding:0 14px; }
textarea { min-height:90px; padding:12px; resize:vertical; }
input:focus,select:focus,textarea:focus { border-color:var(--coral); box-shadow:0 0 0 3px rgba(255,142,125,.15); }
button { min-height:44px; padding:0 18px; border:0; border-radius:12px; cursor:pointer; color:white; background:var(--ink); font-weight:800; transition:.18s ease; }
button:hover { transform:translateY(-1px); }
button:disabled { cursor:wait; opacity:.6; }
.secondary { min-height:38px; color:var(--ink); border:1px solid var(--line); background:white; }
.password-field{position:relative}.password-field input{padding-right:70px}.password-toggle{position:absolute;right:5px;top:5px;min-height:38px;padding:0 12px;color:var(--muted);background:transparent;font-size:11px}.password-toggle:hover{color:var(--ink);transform:none}.caps-warning{color:#b85e52;font-size:10px}.login-button{display:flex;align-items:center;justify-content:space-between;min-height:52px;margin-top:3px;padding:0 19px;background:var(--ink)}.login-button:hover{background:#2d4940;box-shadow:0 10px 24px rgba(32,53,47,.16)}.login-button b{font-size:18px}.message { min-height:18px; margin:0; color:#b44f46; font-size:12px; }.message.success{color:var(--green)}
.login-help{display:flex;justify-content:space-between;gap:12px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.login-help span:first-child{color:var(--green)}
header { position:sticky; z-index:10; top:12px; display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:18px; padding:18px 22px; border:1px solid rgba(32,53,47,.07); border-radius:22px; background:rgba(255,255,255,.9); box-shadow:var(--shadow); backdrop-filter:blur(18px); }
header h1{font-size:34px}.dashboard{min-height:calc(100vh - 64px)}
.header-actions { display:flex; align-items:center; flex-wrap:wrap; gap:9px; color:var(--muted); font-size:12px; }
.stats { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin-bottom:18px; }
.dashboard-tabs{position:sticky;z-index:9;top:116px;display:flex;gap:8px;width:max-content;margin:0 0 20px;padding:5px;border:1px solid rgba(32,53,47,.06);border-radius:15px;background:rgba(235,230,223,.92);backdrop-filter:blur(14px)}.tab-button{min-height:38px;color:var(--muted);background:transparent}.tab-button:hover{transform:none}.tab-button.active{color:var(--ink);background:white;box-shadow:0 4px 14px rgba(32,53,47,.08)}
.stat { padding:18px; border-radius:18px; background:white; box-shadow:0 8px 28px rgba(57,76,68,.06); }
.stat strong { display:block; font-family:Georgia,serif; font-size:30px; }.stat span { color:var(--muted); font-size:11px; }
.analytics-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:12px;margin-bottom:18px}.analytics-card{min-height:260px;padding:22px;border:1px solid rgba(32,53,47,.06);border-radius:22px;background:var(--surface);box-shadow:0 8px 28px rgba(57,76,68,.05)}.analytics-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.analytics-heading span{display:block;margin-bottom:5px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em}.analytics-heading h2{margin:0;font-family:Georgia,serif;font-size:23px;font-weight:500}.analytics-heading>strong{font-family:Georgia,serif;font-size:39px;font-weight:500;line-height:1;color:var(--coral)}.analytics-heading>strong::after{content:' / 30天';display:block;margin-top:5px;color:var(--muted);font-family:Inter,system-ui,sans-serif;font-size:8px;font-weight:700}.trend-bars{display:grid;grid-template-columns:repeat(14,1fr);align-items:end;gap:6px;height:154px;padding-top:10px;border-bottom:1px solid var(--line)}.trend-column{display:grid;grid-template-rows:1fr 20px;align-items:end;height:100%;text-align:center}.trend-column>span{display:block;min-height:6px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--coral),#ffb3a7);transition:height .25s ease}.trend-column:hover>span{background:var(--ink)}.trend-column small{padding-top:6px;color:var(--muted);font-size:7px;white-space:nowrap}.rank-list{display:grid;gap:15px}.rank-item{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:9px}.rank-number{color:#b8afa6;font-family:Georgia,serif;font-size:10px}.rank-copy{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.rank-copy strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.rank-copy b{color:var(--muted);font-size:10px}.rank-item i{display:block;height:5px;overflow:hidden;border-radius:99px;background:#f0ebe6}.rank-item i span{display:block;height:100%;border-radius:inherit;background:var(--green)}.analytics-empty{margin:55px 0;text-align:center;color:var(--muted);font-size:11px}
.toolbar { display:grid; grid-template-columns:1fr 180px; gap:10px; margin-bottom:14px; }
.inquiry-list { display:grid; gap:12px; }
.inquiry { display:grid; grid-template-columns:170px 1fr 210px; gap:22px; padding:22px; border:1px solid rgba(32,53,47,.07); border-radius:20px; background:white; box-shadow:0 8px 28px rgba(57,76,68,.05); }
.inquiry.priority-high{border-left:4px solid #e9ae58}.inquiry.priority-urgent{border-left:4px solid #d9675d}.inquiry-kicker{display:flex;align-items:center;justify-content:space-between;gap:8px}.inquiry-kicker span{padding:4px 7px;border-radius:99px;color:var(--muted);background:#f5f1ec;font-size:8px;font-weight:800}.priority-high .inquiry-kicker span{color:#96631a;background:#fff2d9}.priority-urgent .inquiry-kicker span{color:#a7463d;background:#ffebe8}.contact-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.contact-actions a{padding:6px 9px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;font-size:9px;font-weight:800;text-decoration:none}.contact-actions a:last-child{color:#237d49;border-color:#cbe9d5;background:#f2fff6}.contact-actions a:hover{border-color:var(--coral)}.control-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.followup-field{gap:5px;color:var(--muted);font-size:9px}.followup-field input{min-height:39px}.followup-reminders{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding:17px 20px;border:1px solid #f0d6a9;border-radius:17px;background:#fff7e8;box-shadow:0 8px 24px rgba(143,103,38,.07)}.followup-reminders div{display:grid;gap:3px}.followup-reminders span{color:#a97727;font-size:8px;font-weight:900;letter-spacing:.13em}.followup-reminders strong{font-size:13px}.followup-reminders small{color:#8f7b5b;font-size:9px}.followup-reminders button{min-height:37px;color:#7b5417;background:#f4d799}
.inquiry time,.meta { color:var(--muted); font-size:11px; }.inquiry h2 { margin:5px 0; font-size:16px; }.inquiry p { margin:8px 0 0; line-height:1.65; white-space:pre-wrap; }
.activity-history{margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}.activity-history summary{width:max-content;cursor:pointer;color:var(--green);font-size:9px;font-weight:800;list-style:none}.activity-history summary::-webkit-details-marker{display:none}.activity-history summary::before{content:'＋';display:inline-block;margin-right:5px}.activity-history[open] summary::before{content:'−'}.activity-history summary span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;border-radius:99px;color:var(--muted);background:#f1ece7;font-size:8px}.history-list{display:grid;gap:0;margin:15px 0 0;padding:0;list-style:none}.history-list li{position:relative;display:grid;grid-template-columns:12px 1fr;gap:9px;padding-bottom:15px}.history-list li:not(:last-child)::before{content:'';position:absolute;left:4px;top:9px;bottom:-1px;width:1px;background:#e3ddd6}.history-list i{position:relative;z-index:1;width:9px;height:9px;margin-top:4px;border:2px solid white;border-radius:50%;background:var(--coral);box-shadow:0 0 0 1px #e4d7d0}.history-list time,.history-list strong,.history-list small{display:block}.history-list time{font-size:8px}.history-list strong{margin-top:3px;font-size:10px}.history-list small{margin-top:3px;color:var(--muted);font-size:8px}.history-list p{margin-top:5px;padding:7px 9px;border-radius:8px;background:#f8f5f1;font-size:9px}.history-empty{color:var(--muted);font-size:9px}
.inquiry-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.inquiry-facts span{padding:5px 8px;border-radius:99px;color:var(--muted);background:#f7f3ee;font-size:9px}
.controls { display:grid; align-content:start; gap:9px; }.save { min-height:38px; background:var(--green); }.empty { padding:60px; text-align:center; color:var(--muted); }
.product-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.product-toolbar h2{margin:0;font-family:Georgia,serif;font-size:30px;font-weight:500}.product-toolbar p{margin:6px 0 0;color:var(--muted);font-size:11px}.product-toolbar label{width:180px}.product-toolbar-actions{display:flex;align-items:flex-end;gap:9px}.product-toolbar-actions button{white-space:nowrap}.product-editor-list{display:grid;gap:12px}.product-editor{display:grid;grid-template-columns:150px 1fr 130px;gap:20px;padding:20px;border:1px solid rgba(32,53,47,.07);border-radius:20px;background:white}.product-media-manager{display:grid;align-content:start;gap:8px}.main-image-wrap{position:relative}.main-image-wrap img{display:block;width:150px;aspect-ratio:1;object-fit:cover;border-radius:15px;background:#f8f3ee}.main-image-wrap span{position:absolute;left:8px;bottom:8px;padding:4px 7px;border-radius:99px;color:white;background:rgba(32,53,47,.72);font-size:9px}.product-media-manager small{color:var(--muted);font-size:8px}.upload-button{display:grid;place-items:center;min-height:38px;padding:0 10px;border:1px dashed #cfbfb3;border-radius:10px;cursor:pointer;color:var(--ink);background:#fffaf4;font-size:10px}.upload-button:hover{border-color:var(--coral)}.upload-button.compact{display:inline-grid;min-height:32px}.product-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-fields>label:nth-child(3),.detail-manager{grid-column:1/-1}.product-side{display:grid;align-content:start;gap:12px}.switch-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;color:var(--muted);font-size:11px}.switch-row input{width:20px;min-height:20px}.product-save{background:var(--green)}.product-delete{color:#a34e47;border:1px solid #efd1cb;background:#fff7f5}.detail-manager{margin-top:5px;padding-top:13px;border-top:1px solid var(--line)}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:11px}.detail-thumbs{display:flex;flex-wrap:wrap;gap:8px}.detail-thumbs p{margin:5px 0;color:var(--muted);font-size:10px}.detail-thumbs figure{position:relative;width:76px;margin:0}.detail-thumbs img{display:block;width:76px;aspect-ratio:1;object-fit:cover;border-radius:10px;background:#f8f3ee}.remove-image{position:absolute;top:-5px;right:-5px;width:22px;min-height:22px;padding:0;border:2px solid white;border-radius:50%;background:#b95f56;font-size:13px;line-height:1}
dialog{width:min(480px,calc(100% - 28px));padding:0;border:0;border-radius:24px;color:var(--ink);background:white;box-shadow:0 30px 100px rgba(32,53,47,.28)}dialog::backdrop{background:rgba(25,40,35,.45);backdrop-filter:blur(5px)}dialog form{margin:0;padding:30px}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dialog-heading .eyebrow{margin:0 0 7px}.dialog-heading h2{margin:0;font-family:Georgia,serif;font-size:30px;font-weight:500}.dialog-close{min-height:36px;width:36px;padding:0;border-radius:50%;color:var(--muted);background:#f6f2ed;font-size:24px;line-height:1}.dialog-close:hover{transform:none;color:var(--ink)}dialog small{color:var(--muted);font-size:9px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.dialog-actions button{min-width:100px}
#product-dialog-admin{width:min(650px,calc(100% - 28px))}.creation-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.creation-upload{padding:14px;border:1px dashed #cfbfb3;border-radius:14px;background:#fffaf4}.creation-upload strong{font-size:11px}.creation-upload input{min-height:auto;padding:8px 0 0;border:0;background:transparent;font-size:9px}.creation-upload small{font-weight:500}
@media (max-width:1050px){.analytics-grid{grid-template-columns:1fr 1fr}.trend-card{grid-column:1/-1}}
@media (max-width:800px) { main{width:min(100% - 20px,560px);padding:10px 0}.login-card{display:block;min-height:calc(100vh - 20px);margin:0;border-radius:25px}.login-visual{display:none}.login-panel{min-height:calc(100vh - 20px);padding:34px 25px}.mobile-brand{display:flex;margin-bottom:55px;font-size:21px}.login-panel h1{font-size:40px}.login-help{flex-direction:column}.stats{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}.trend-card{grid-column:auto}.analytics-card{min-height:230px}header{position:relative;top:auto;align-items:flex-start;flex-direction:column}.dashboard-tabs{position:relative;top:auto}.toolbar{grid-template-columns:1fr}.inquiry{grid-template-columns:1fr}.controls{grid-template-columns:1fr 1fr}.controls textarea{grid-column:1/-1}.dashboard-tabs{width:100%;overflow-x:auto}.tab-button{flex:1;white-space:nowrap}.product-toolbar{align-items:stretch;flex-direction:column}.product-toolbar label{width:100%}.product-editor{grid-template-columns:100px 1fr}.main-image-wrap img{width:100px}.product-side{grid-column:1/-1}.product-fields{grid-template-columns:1fr}.product-fields>label:nth-child(3),.detail-manager{grid-column:auto}.detail-manager{grid-column:1/-1} }
.backup-list{display:grid;gap:9px}.backup-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:18px 20px;border:1px solid rgba(32,53,47,.07);border-radius:16px;background:white}.backup-item strong{display:block;font-size:13px}.backup-item small{color:var(--muted);font-size:10px}.backup-actions{display:flex;gap:8px}.backup-actions a{display:grid;place-items:center;min-height:36px;padding:0 13px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:white;font-size:10px;font-weight:800;text-decoration:none}.backup-actions button{min-height:36px;padding:0 13px}.danger-button{background:#b95f56}.restore-button{color:#a34e47;border:1px solid #efd1cb;background:#fff7f5}@media(max-width:600px){.backup-item{grid-template-columns:1fr}.backup-actions{justify-content:flex-start}.creation-media-grid{grid-template-columns:1fr}}

/* Full admin application shell */
body.admin-mode{background:#f6f3ef}.admin-mode main{width:100%;margin:0;padding:0}.dashboard{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:24px 16px 18px;border-right:1px solid #e7e0d9;background:#fffaf5}.sidebar-brand{display:flex;align-items:center;gap:11px;margin:0 5px 34px;color:var(--ink);text-decoration:none}.sidebar-brand .mark{width:40px;height:40px;border-radius:13px;font-size:22px}.sidebar-brand>span:last-child{display:grid;gap:2px}.sidebar-brand strong{font-family:Georgia,serif;font-size:20px;font-weight:500}.sidebar-brand small{color:var(--muted);font-size:7px;font-weight:800;letter-spacing:.12em}.sidebar-section-label{margin:0 11px 9px;color:#a19890;font-size:8px;font-weight:900;letter-spacing:.14em}.admin-sidebar .dashboard-tabs{position:static;display:grid;width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none}.admin-sidebar .tab-button{display:grid;grid-template-columns:31px 1fr;grid-template-rows:auto auto;align-items:center;gap:1px 8px;min-height:58px;padding:10px 11px;border-radius:14px;text-align:left;color:var(--muted);background:transparent}.admin-sidebar .tab-button .sidebar-icon{grid-row:1/3;display:grid;place-items:center;width:31px;height:31px;border-radius:10px;color:var(--green);background:#f0f5f1;font-size:17px}.admin-sidebar .tab-button>span:nth-child(2){color:var(--ink);font-size:12px;font-weight:800}.admin-sidebar .tab-button small{font-size:8px;font-weight:600}.admin-sidebar .tab-button.active{background:#fff;box-shadow:0 8px 25px rgba(57,76,68,.08)}.admin-sidebar .tab-button.active .sidebar-icon{color:#fff;background:var(--coral)}.sidebar-divider{height:1px;margin:20px 10px;background:#e9e1da}.sidebar-link{display:flex;align-items:center;gap:9px;min-height:43px;padding:0 11px;border-radius:12px;color:var(--muted);font-size:11px;font-weight:700;text-decoration:none}.sidebar-link:hover{color:var(--ink);background:#fff}.sidebar-link .sidebar-icon{font-size:16px}.sidebar-footer{display:grid;gap:3px;margin-top:auto;padding:14px 12px;border:1px solid #eee4dc;border-radius:14px;background:#fff}.sidebar-footer span{font-size:8px;font-weight:900;letter-spacing:.11em}.sidebar-footer small{color:var(--muted);font-size:8px}.admin-workspace{min-width:0;padding:0 28px 48px}.admin-workspace>header{position:sticky;top:0;z-index:20;margin:0 -28px 24px;padding:20px 30px;border-width:0 0 1px;border-radius:0;background:rgba(255,255,255,.92);box-shadow:none}.admin-workspace>header .eyebrow{margin:0 0 4px}.admin-workspace>header h1{font-size:29px}.workspace-content{max-width:1480px;margin:0 auto}.admin-workspace .stats{gap:12px}.admin-workspace .stat{border:1px solid rgba(32,53,47,.055);box-shadow:0 5px 20px rgba(57,76,68,.045)}.admin-workspace .analytics-card,.admin-workspace .inquiry,.admin-workspace .product-editor{box-shadow:0 5px 20px rgba(57,76,68,.045)}
@media(max-width:900px){.dashboard{grid-template-columns:1fr}.admin-sidebar{position:sticky;z-index:30;height:auto;padding:10px 12px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-brand{display:none}.sidebar-section-label,.sidebar-divider,.sidebar-link,.sidebar-footer{display:none}.admin-sidebar .dashboard-tabs{display:flex}.admin-sidebar .tab-button{display:flex;justify-content:center;min-height:44px;padding:6px 10px}.admin-sidebar .tab-button .sidebar-icon{grid-row:auto;width:28px;height:28px}.admin-sidebar .tab-button small{display:none}.admin-workspace{padding:0 12px 35px}.admin-workspace>header{margin:0 -12px 16px;padding:14px 15px}.admin-workspace>header h1{font-size:24px}.header-actions #admin-email{display:none}}
