.daily-style-banner{margin:16px 16px 4px;min-height:130px}.daily-style-banner h2{font-size:clamp(17px,4.4vw,22px);line-height:1.55}.daily-style-banner .btn{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px}.skin-share-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:rgba(32,49,37,.67);display:grid;place-items:center;padding:20px}.skin-share-panel{position:relative;width:min(100%,420px);padding:18px;border-radius:20px;background:#fff;text-align:center;box-shadow:0 18px 60px rgba(23,38,24,.4)}.skin-share-panel img{display:block;width:100%;border-radius:12px}.skin-share-panel p{font-size:13px;color:var(--ink-2)}.skin-share-close{position:absolute;right:22px;top:20px;background:#fff;border-radius:50%;width:34px;height:34px;font-size:25px}.daily-style-banner small{display:flex;gap:6px;align-items:baseline;font-size:11px;line-height:1.8;color:#738068}.daily-style-banner small>span{display:inline-block;flex:none;width:7px;height:7px;border-radius:50%;border:1px solid #7b867333}.elements-date{font-size:11px;line-height:1.8;color:var(--ink-3);margin:9px 0 12px}.element-palette{margin:10px 0 12px}.element-palette>p{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--ink-2);margin:0 0 10px}.element-palette b{font-weight:600}.element-palette>p>span{font-size:11px;color:var(--ink-3)}.element-swatches{display:flex;gap:9px}.element-swatches>span{flex:1;min-width:0;font-size:10px;color:var(--ink-2);text-align:center}.element-swatches i{display:block;height:23px;border:1px solid #6c776526;border-radius:7px;margin-bottom:4px}.elements-tip{font-size:12px;line-height:1.9;color:var(--ink-2);margin:12px 0 6px}.elements-caption{margin:5px 0 0;color:var(--ink-3);font-size:10px;line-height:1.8}.elements-calendar{padding-bottom:4px}.elements-month{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.elements-month .btn{font-size:24px;min-width:44px;padding:6px}.elements-month input{min-width:0;width:170px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:10px;padding:10px 8px;font:inherit;font-size:14px}.elements-weekday,.elements-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.elements-weekday{font-size:11px;color:var(--ink-3);text-align:center;margin-bottom:6px}.elements-weekday span{padding:5px 0}.elements-days button{min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid transparent;border-radius:10px;color:var(--ink-2)}.elements-days b{font-size:12px;font-weight:500}.elements-days i{height:5px;width:12px;border:1px solid #7b867333;border-radius:3px}.elements-days .is-today{border-color:var(--line)}.elements-days .selected{background:var(--accent);color:#fff;border-color:var(--accent)}.elements-days button:focus-visible{outline:2px solid var(--accent-deep);outline-offset:1px}.elements-date-tools{display:flex;gap:6px;margin:12px 0 16px}.elements-date-tools .btn{flex:1;min-width:0;padding:9px 4px;font-size:11px}.elements-detail{border-top:1px solid var(--line);padding:16px 0 0}.elements-detail h3{font-size:16px;margin:0 0 6px}.elements-detail .element-palette{padding:12px;border-radius:12px;background:var(--surface-2)}.elements-scene{display:grid;gap:7px;font-size:12px;margin-top:14px;color:var(--ink-2)}.elements-scene select{width:100%;padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}.elements-outfit{display:grid;grid-template-columns:minmax(112px,38%) minmax(0,1fr);gap:10px;align-items:center;margin-top:14px;padding:12px;border:1px solid var(--accent-line);border-radius:16px;background:radial-gradient(circle at 20% 15%,#fff,#f0f4ea 72%)}.elements-outfit-stage{display:grid;place-items:center;min-height:220px;perspective:520px}.elements-outfit-model{width:150px;max-width:100%;height:220px}.elements-outfit-model canvas{display:block;width:100%;height:100%}.elements-outfit-turn{position:relative;width:150px;max-width:100%;height:220px;transform-style:preserve-3d;animation:elements-turn 20s linear infinite}.elements-outfit-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;filter:drop-shadow(0 5px 7px #334b3a26)}.elements-outfit-face svg{display:block;width:100%;height:100%}.elements-outfit-front{transform:translateZ(14px)}.elements-outfit-back{transform:rotateY(180deg) translateZ(14px)}.elements-outfit-side-a{transform:rotateY(90deg) translateZ(22px)}.elements-outfit-side-b{transform:rotateY(-90deg) translateZ(22px)}@keyframes elements-turn{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.elements-outfit-copy{min-width:0;font-size:12px;line-height:1.6;color:var(--ink-2)}.elements-outfit-copy>b{display:block;color:var(--accent-deep);font-size:13px}.elements-outfit-copy>p{margin:6px 0 10px}.elements-outfit-pieces{display:grid;gap:6px}.elements-outfit-pieces>div{display:grid;grid-template-columns:16px 28px minmax(0,1fr);align-items:center;gap:5px}.elements-outfit-pieces i{display:block;width:14px;height:14px;border-radius:50%;border:1px solid #3443362c}.elements-outfit-pieces strong{font-weight:600;color:var(--ink)}@media (prefers-reduced-motion:reduce){.elements-outfit-turn{animation:none}}.elements-rules{padding-top:16px;margin-top:14px;border-top:1px solid var(--line);color:var(--ink-3);font-size:11px;line-height:1.9}.elements-rules summary{cursor:pointer;color:var(--ink-2)}.elements-rules a{color:var(--accent-deep);text-decoration:underline}.diagnose-tabs{display:flex;gap:10px;padding:20px 16px 12px}.diagnose-tabs>button,.diagnose-tabs>.skin-tab-select{flex:1;min-width:0}.skin-tab-select{position:relative}.skin-menu-trigger{width:100%;gap:5px!important;padding:12px 8px!important;font-size:clamp(11px,3.4vw,14px)!important;white-space:nowrap;flex-wrap:nowrap!important}.skin-menu-trigger>span{white-space:nowrap}.diagnose-tabs{flex-wrap:nowrap}.diagnose-tabs>button{white-space:nowrap;padding:12px 8px}.skin-dropdown{position:absolute;top:calc(100% + 6px);left:0;width:100%;z-index:30;padding:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 8px 24px rgba(52,73,44,.15)}.skin-dropdown button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 14px;min-height:44px;border-radius:9px;color:var(--ink);font-size:14px}.skin-dropdown button.selected,.skin-dropdown button:hover,.skin-dropdown button:focus-visible{background:var(--accent-wash);color:var(--accent-deep)}.skin-content{padding:0 12px 24px}.skin-mirror{position:relative;width:100%;aspect-ratio:1 / 1;max-width:520px;margin:12px auto 0}.skin-glass{position:absolute;top:7.5%;right:7.5%;bottom:7.5%;left:7.5%;overflow:hidden;border-radius:50%;background:linear-gradient(145deg,#f7faf5,#cad6c6);box-shadow:0 0 0 3px var(--accent-line),0 8px 24px rgba(60,74,56,.094)}.skin-glass>img,.skin-glass>video{width:100%;height:100%;object-fit:cover;display:block}.skin-glass>video.skin-front-camera{transform:scaleX(-1)}.skin-drape{position:absolute;left:-15%;right:-15%;bottom:-5%;border-radius:50% 50% 0 0/30% 30% 0 0;transition:background-color .15s;box-shadow:inset 0 10px 18px rgba(0,0,0,.03);pointer-events:none}.skin-drape-label{position:absolute;left:18%;right:18%;bottom:0;display:flex;align-items:center;justify-content:center;text-align:center;font-size:clamp(11px,3.4vw,15px);font-weight:600;line-height:1.4;pointer-events:none}.skin-swatches{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none;user-select:none;cursor:grab}.skin-swatches circle{cursor:pointer}.skin-face-guide{position:absolute;top:9%;left:24%;width:52%;border:2px dashed #fff;border-radius:50%;pointer-events:none;box-shadow:0 0 0 1px rgba(50,70,49,.267)}.skin-camera-note{position:absolute;bottom:10%;left:20%;right:20%;text-align:center;font-size:12px;line-height:1.6;color:var(--ink-2);pointer-events:none}.skin-tools{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:12px 0}.skin-tools .btn{min-height:44px}.skin-control{display:grid;gap:7px;margin:12px 0;font-size:12px;color:var(--ink-2)}.skin-control input{width:100%;accent-color:var(--accent-deep)}.skin-control-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.skin-name-toggle{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;flex-shrink:0;cursor:pointer;color:var(--ink-2)}.skin-name-toggle>input{position:absolute;opacity:0;pointer-events:none}.skin-toggle-track{position:relative;width:34px;height:20px;border-radius:999px;background:var(--line);transition:background .18s ease;box-shadow:inset 0 0 0 1px rgba(54,73,49,.08)}.skin-toggle-track>span{position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(37,53,34,.2);transition:transform .18s ease}.skin-name-toggle>input:checked+.skin-toggle-track{background:var(--accent-deep)}.skin-name-toggle>input:checked+.skin-toggle-track>span{transform:translate(14px)}.skin-name-toggle>input:focus-visible+.skin-toggle-track{outline:2px solid var(--accent-deep);outline-offset:2px}.skin-comparison{width:100%;border-collapse:collapse;table-layout:fixed;margin:12px 0;font-size:13px}.skin-comparison th,.skin-comparison td{padding:12px 8px;border:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.skin-comparison th{background:var(--accent-wash)}.skin-comparison small{display:block;margin-top:6px;line-height:1.6;color:var(--ink-2)}.skin-final-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;margin-top:12px}.skin-final-actions .btn{width:100%;min-width:0;padding-left:8px;padding-right:8px;white-space:nowrap}.skin-generated-report,.skin-archive-report{display:grid;justify-items:center;gap:12px;margin-top:16px}.skin-generated-report img,.skin-archive-report img{display:block;width:min(100%,420px);height:auto;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 22px rgba(51,75,58,.125)}.skin-swatches:active{cursor:grabbing}.skin-saved-frames{margin:12px 0;padding:12px;border-radius:12px;background:var(--accent-wash);font-size:12px;color:var(--ink-2)}.skin-saved-frames>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.skin-saved-frames span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--surface)}.skin-saved-frames i{width:12px;height:12px;border-radius:50%;border:1px solid #0002}.guide-content{padding:16px 16px 12px}.guide-back{margin-bottom:12px}.guide-hero{position:relative;overflow:hidden;text-align:center;padding:30px 15px 24px;border-radius:22px;border:1px solid #dce5d4;background:linear-gradient(145deg,#f4f6ec,#eaf1e4 65%,#f7f1e6)}.guide-hero>img{display:block;width:132px;height:auto;margin:0 auto 20px;opacity:.68}.guide-hero h1{margin:10px 0 12px;font-family:var(--serif);font-size:30px;font-weight:600;letter-spacing:.12em;color:var(--accent-deep)}.guide-hero p:not(.eyebrow){margin:0;font-size:12px;line-height:1.9;color:var(--ink-2)}.guide-hero-note{display:inline-block;margin-top:17px;font-size:11px;color:var(--ink-3)}.guide-botanical{position:absolute;right:-8px;top:-3px;width:94px;height:94px;color:#9aaf8b;opacity:.58;pointer-events:none}.guide-chapters{display:grid;gap:12px;margin-top:20px}.guide-chapter{overflow:hidden;border:1px solid var(--line);background:var(--surface);border-radius:16px}.guide-chapter.is-expanded{border-color:#b9cba9;box-shadow:0 5px 18px rgba(70,93,55,.04)}.guide-chapter h2{margin:0;font:inherit}.guide-chapter-toggle{display:flex;width:100%;gap:11px;align-items:center;text-align:left;padding:17px 13px;min-height:76px}.guide-chapter-toggle:focus-visible{outline:2px solid var(--accent-deep);outline-offset:-3px;border-radius:14px}.guide-number{width:29px;flex:none;font-family:var(--serif);font-size:22px;color:#8b9d7e}.guide-chapter-name{flex:1;min-width:0;font-size:15px;font-weight:700;line-height:1.5;color:var(--ink)}.guide-chapter-name small{display:block;margin-top:3px;font-size:11px;font-weight:400;color:var(--ink-3);line-height:1.6}.guide-expand{flex:none;font-size:22px;color:var(--accent-deep)}.guide-chapter-body{padding:0 17px 20px;border-top:1px solid var(--line-soft)}.guide-chapter-body h3{margin:18px 0 8px;font-size:14px;color:var(--accent-deep)}.guide-chapter-body p,.guide-chapter-body li{font-size:13px;line-height:1.95;color:var(--ink-2);overflow-wrap:anywhere}.guide-chapter-body p{margin:0}.guide-chapter-body ol{margin:0;padding-left:22px}.guide-chapter-body li+li{margin-top:9px}.guide-chapter-body li::marker{color:#7b9270;font-weight:700}.guide-download{position:relative;overflow:hidden;margin-top:22px;padding:22px 17px;border:1px solid #dce5d4;border-radius:18px;background:#f2f5ed}.guide-download h2{position:relative;font-family:var(--serif);font-size:20px;margin:0 0 8px;color:var(--accent-deep)}.guide-download p{position:relative;margin:0 0 17px;font-size:12px;line-height:1.8;color:var(--ink-2)}.guide-download .guide-botanical{opacity:.3}.guide-download .btn{position:relative}.guide-footer{padding:22px 0 8px;text-align:center;font-size:10px;line-height:1.9;color:var(--ink-3)}.admin-sidebar{overflow-y:auto}.admin-account-actions{display:grid}.admin-main{overflow-wrap:anywhere}.admin-main input,.admin-main textarea,.admin-main select{max-width:100%;min-width:0}.admin-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;background:var(--bg);color:var(--ink)}.admin-sidebar{width:220px;flex:none;background:var(--surface);border-right:1px solid var(--line);padding:18px;display:flex;flex-direction:column}.admin-brand{min-height:104px;display:grid;align-content:center;justify-items:center;gap:10px;padding:0 4px 18px}.admin-brand img{width:150px;height:auto;opacity:.62}.admin-brand h2{margin:0;font-size:24px;letter-spacing:.18em;padding-left:.18em}.admin-nav{display:grid;gap:5px}.admin-nav .btn{justify-content:flex-start}.admin-account-actions{margin-top:auto;gap:8px;padding-top:18px}.admin-account-actions .btn{width:100%;justify-content:flex-start}.admin-settings{max-width:520px}.admin-settings .btn{margin-top:14px;min-width:140px}.admin-main{flex:1;min-width:0;overflow-y:auto;padding:26px clamp(16px,4vw,48px)}.admin-header{min-height:96px;display:flex;justify-content:space-between;align-items:center;margin:0 0 18px;padding-bottom:18px}.admin-header .h1{font-size:24px}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px}.admin-form-grid label{display:grid;gap:5px}.admin-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.admin-search{display:flex;gap:8px}.admin-list-row{width:100%;padding:13px 15px;border-top:1px solid var(--line-soft);display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left}.admin-list-row:first-child{border-top:0}.admin-list-row small{display:block;color:var(--ink-3);margin-top:4px;line-height:1.5}.admin-review-status{flex:none;white-space:nowrap;word-break:keep-all}.admin-data{white-space:pre-wrap;word-break:break-word;font:12px/1.65 ui-monospace,monospace;background:var(--surface-2);padding:10px;border-radius:var(--r-sm)}.admin-filterbar{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap}.admin-filterbar>div{display:flex;flex-wrap:wrap;gap:6px}.admin-filterbar form{display:flex;gap:6px}.admin-filterbar input,.admin-knowledge-layout input,.admin-knowledge-layout textarea{padding:10px 11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2)}.admin-review-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(360px,1.3fr);gap:14px;align-items:start}.admin-review-list{max-height:calc(100vh - 180px);overflow:auto}.admin-review-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;display:grid;place-items:center;padding:24px;background:rgba(34,49,42,.42);backdrop-filter:blur(4px)}.admin-review-dialog{width:min(820px,100%);max-height:calc(100vh - 48px);overflow-y:auto;border-radius:var(--r-lg);background:var(--bg);box-shadow:0 24px 70px rgba(25,42,33,.25)}.admin-review-dialog-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:rgba(248,250,245,.96);backdrop-filter:blur(10px)}.admin-review-detail{border:0;border-radius:0;box-shadow:none}.annotation-photo{position:relative;cursor:crosshair;background:var(--surface-2);border-radius:var(--r-sm);overflow:hidden}.annotation-photo img{width:100%;max-height:560px;display:block;object-fit:contain}.annotation-photo i{position:absolute;border:3px solid #d54a45;border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.8);pointer-events:none}.admin-message{margin-top:10px;padding:11px 12px;background:var(--surface-2);border-radius:var(--r-sm)}.admin-message p{margin:5px 0 0;white-space:pre-wrap;line-height:1.7;font-size:13px}.admin-knowledge-layout{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(350px,1.25fr);gap:14px;align-items:start}.admin-knowledge-layout form{display:grid;gap:10px;position:sticky;top:0}@media (max-width: 1000px){.admin-booking{grid-template-columns:minmax(0,1fr) auto!important}.admin-member{flex-wrap:wrap}.admin-member>div:last-child{flex-wrap:wrap}}@media (max-width: 700px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%!important;padding:max(10px,env(safe-area-inset-top)) 12px 8px!important;border-right:0!important;border-bottom:1px solid var(--line);display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px;overflow:visible}.admin-sidebar>.eyebrow,.admin-sidebar-spacer{display:none}.admin-sidebar>h2{margin:0!important;font-size:16px;align-self:center}.admin-account-actions{grid-column:2;grid-row:1;display:flex;gap:4px}.admin-account-actions .btn{margin:0!important;padding:8px;font-size:12px;min-height:40px}.admin-nav{grid-column:1 / -1;grid-row:2;display:flex!important;overflow-x:auto;min-width:0;padding-bottom:4px;scrollbar-width:thin}.admin-nav .btn{flex:0 0 auto;white-space:nowrap;padding:10px 12px;min-height:44px}.admin-main{min-height:0;padding:16px 12px max(24px,env(safe-area-inset-bottom))!important;overscroll-behavior-y:contain}.admin-main input,.admin-main textarea,.admin-main select{font-size:16px}.admin-review{flex-direction:column}.admin-review>div{width:100%}.admin-booking{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.admin-booking>.chip{justify-self:start}.admin-booking>div:last-child{flex-wrap:wrap}.admin-member{align-items:flex-start!important;flex-direction:column}.admin-brand{min-height:40px;display:flex;align-items:center;justify-content:flex-start;gap:9px;padding:0}.admin-brand img{width:76px}.admin-brand h2{margin:0;font-size:16px;letter-spacing:.1em;padding:0}.admin-form-grid,.admin-review-layout,.admin-knowledge-layout{grid-template-columns:1fr}.admin-review-list{max-height:none}.admin-review-modal{place-items:stretch;padding:0}.admin-review-dialog{width:100%;max-height:100%;border-radius:0}.admin-review-dialog-head{padding-top:max(10px,env(safe-area-inset-top))}.admin-knowledge-layout form{position:static}.admin-filterbar form,.admin-search{width:100%}.admin-filterbar input,.admin-search input{flex:1}.admin-header{min-height:0;padding-bottom:0}}.admin-nav .btn{position:relative;padding-right:44px}.admin-notification-badge{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:21px;height:21px;padding:0 5px;border-radius:999px;color:#fff;background:#cf4149;font-size:11px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 0 0 2px var(--surface)}.admin-nav .admin-notification-badge{position:absolute;right:9px;top:50%;transform:translateY(-50%)}.admin-notification-inline{margin-left:5px;box-shadow:none}@media (max-width: 700px){.admin-nav .btn{padding-right:35px}.admin-nav .admin-notification-badge{right:5px;min-width:19px;height:19px;font-size:10px}}:root{--bg: #F0F4EC;--bg-deep: #E2E9DB;--surface: #FAFCF8;--surface-2: #EEF3E9;--line: #DAE3D2;--line-soft: #E8EEE2;--ink: #3C4A38;--ink-2: #74836C;--ink-3: #A3AF99;--ink-on: #FBFDF9;--accent: #7AA268;--accent-lift: #86AE73;--accent-deep: #55784A;--accent-press: #405C38;--accent-soft: #D9E6D0;--accent-wash: #EDF4E7;--accent-line: #CEDEC4;--accent-line-2: #BED2B2;--mist: #7BA2A3;--mist-soft: #DBE9E8;--mist-line: #C7DCDA;--mist-ink: #4E6D6E;--mist-ink-2: #63817F;--sage: #8FA97B;--sage-soft: #E1EBD6;--sage-line: #CDDCBF;--sage-ink: #5B6E4B;--sage-ink-2: #46563A;--clay: #C2A275;--clay-soft: #F0E7D5;--clay-line: #E0D0B3;--clay-ink: #8A6A40;--clay-ink-2: #6B5230;--plum: #9A9AAE;--plum-soft: #E4E4EC;--plum-ink: #6A6A7D;--r-sm: 10px;--r: 16px;--r-lg: 22px;--r-xl: 28px;--pad: 18px;--shadow-sm: 0 1px 2px rgba(60,74,56,.04), 0 2px 8px rgba(60,74,56,.04);--shadow: 0 2px 6px rgba(60,74,56,.05), 0 8px 24px rgba(60,74,56,.06);--shadow-lg: 0 4px 12px rgba(60,74,56,.07), 0 18px 44px rgba(60,74,56,.1);--sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", "Noto Sans SC", sans-serif;--serif: "Songti SC", "SimSun", "Noto Serif SC", Georgia, serif;--tab-h: 66px;--topbar-h: 64px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--bg-deep);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}img{max-width:100%;display:block}.stage{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:26px;padding:22px;background:radial-gradient(1100px 600px at 20% -10%,#EDF3E7 0%,transparent 60%),radial-gradient(900px 500px at 100% 100%,#DFE9E3 0%,transparent 55%),var(--bg-deep)}.phone{width:400px;height:min(860px,calc(100vh - 44px));background:var(--bg);border-radius:38px;box-shadow:var(--shadow-lg),0 0 0 9px #d3dbcc,0 0 0 10px #c5cfbd;overflow:hidden;position:relative;display:flex;flex-direction:column}.client-topbar{position:relative;z-index:45;height:var(--topbar-h);flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;padding:max(8px,env(safe-area-inset-top)) 12px 8px;background:rgba(250,252,248,.96);border-bottom:1px solid var(--line-soft);box-shadow:0 5px 18px rgba(44,56,41,.05);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.client-topbar-brand{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;justify-self:start}.client-topbar-brand img{width:46px;height:18px;object-fit:contain;object-position:center;opacity:.68;flex:none}.client-topbar-brand span{overflow:hidden;color:var(--ink-2);font-size:10px;font-weight:700;line-height:1.2;white-space:nowrap;text-overflow:ellipsis}.client-topbar h1{margin:0;font-size:17px;line-height:1;letter-spacing:.08em;white-space:nowrap}.client-topbar-settings{justify-self:end;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--accent-deep)}.client-topbar-settings:active{background:var(--accent-wash)}.client-topbar-placeholder{justify-self:end;width:38px;height:38px}.client-topbar-user{justify-self:end;width:auto!important;max-width:112px;padding:0 0 0 7px;display:flex!important;grid-auto-flow:unset;align-items:center;gap:6px;border-radius:999px!important}.client-topbar-user>span{max-width:68px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700}.client-topbar-user img,.client-topbar-user i{width:30px;height:30px;border-radius:50%;object-fit:cover;flex:none}.client-topbar-user i{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-deep);font-size:12px;font-style:normal;font-weight:800}.member-avatar-preview{width:82px;height:82px;border-radius:50%;overflow:hidden;flex:none;display:grid;place-items:center;background:var(--accent-wash);border:1px solid var(--accent-line);color:var(--ink-3);font-size:12px}.member-avatar-preview img{width:100%;height:100%;object-fit:cover}.review-excerpt{position:relative;display:block;min-width:0}.review-excerpt-copy{display:-webkit-box;overflow:hidden;padding-right:40px;white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:2}.review-excerpt>button{position:absolute;right:0;bottom:0;padding:0 0 0 8px;color:var(--accent-deep);font-size:12px;font-weight:700;line-height:inherit}.review-excerpt.is-open{padding-bottom:22px}.review-excerpt.is-open .review-excerpt-copy{display:block;overflow:visible;padding-right:0}@media (max-width: 900px){.stage{padding:0;display:block;background:var(--bg)}.phone{width:100%;height:100vh;height:100dvh;border-radius:0;box-shadow:none}}.screen{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--tab-h) + 24px);scrollbar-width:thin;scrollbar-color:var(--line) transparent}.screen::-webkit-scrollbar{width:5px}.screen::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.screen::-webkit-scrollbar-track{background:transparent}.pad{padding-left:var(--pad);padding-right:var(--pad)}.screen-split{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-bottom:var(--tab-h)}.studio-split-body{display:flex;flex:1;min-height:0;overflow:hidden}.rail{width:82px;flex:none;background:var(--surface-2);border-right:1px solid var(--line-soft);padding:13px 7px;overflow-y:auto;display:flex;flex-direction:column;gap:5px;scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.rail button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:13px 3px;border-radius:15px;color:var(--ink-2);font-size:11.5px;font-weight:600;letter-spacing:.3px;line-height:1.3;transition:background .2s ease,color .2s ease}.rail button.on{background:var(--surface);color:var(--accent-deep);box-shadow:var(--shadow-sm)}.rail-label{margin:4px 0 1px;text-align:center;font-size:10.5px;font-weight:700;letter-spacing:1px;color:var(--ink-3)}.rail-divider{display:block;height:1px;margin:6px 10px;background:var(--line)}.ring-stage:focus{outline:none}.ring-stage:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:50%}.panel{flex:1;min-width:0;overflow-y:auto;padding:0 0 28px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.panel::-webkit-scrollbar{width:4px}.panel::-webkit-scrollbar-thumb{background:var(--line);border-radius:2px}.h1{font-family:var(--serif);font-size:25px;line-height:1.35;margin:0;font-weight:600;letter-spacing:.5px}.h2{font-family:var(--serif);font-size:18px;margin:0;font-weight:600;letter-spacing:.4px}.eyebrow{font-size:11px;letter-spacing:2.4px;text-transform:uppercase;color:var(--ink-3);margin:0 0 7px;font-weight:600}.muted{color:var(--ink-2)}.tiny{font-size:12.5px}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin:30px 0 13px}.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line-soft)}.card-pad{padding:17px 18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:999px;font-size:15px;font-weight:600;letter-spacing:.5px;transition:transform .15s ease,box-shadow .2s ease,background .2s ease}.btn:active{transform:scale(.975)}.btn-primary{background:var(--accent-deep);color:var(--ink-on);box-shadow:0 4px 14px rgba(85,120,74,.26)}.btn-primary:hover{background:var(--accent-press)}.btn-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{background:var(--surface-2)}.btn-block{width:100%}.btn:disabled{opacity:.45;cursor:default}.chip{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:.3px;background:var(--surface-2);color:var(--ink-2);border:1px solid transparent;transition:all .18s ease}.chip.on{background:var(--accent-soft);color:var(--accent-deep);border-color:var(--accent-line)}.chip-sage{background:var(--sage-soft);color:var(--sage-ink)}.chip-mist{background:var(--mist-soft);color:var(--mist-ink)}.chip-clay{background:var(--clay-soft);color:var(--clay-ink)}.chip-plum{background:var(--plum-soft);color:var(--plum-ink)}.tabbar{position:absolute;left:0;right:0;bottom:0;height:var(--tab-h);display:grid;grid-template-columns:repeat(5,1fr);background:linear-gradient(180deg,rgba(253,254,251,.97),rgba(244,249,242,.97));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid rgba(255,255,255,.75);box-shadow:0 -1px 0 var(--line-soft),0 -12px 26px rgba(44,56,41,.07);z-index:40}.tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--ink-3);font-size:10.5px;letter-spacing:.6px;font-weight:600;transition:color .2s ease}.tabbar button.on{color:var(--accent-deep)}.tabbar button.center{justify-content:flex-end;padding-bottom:9px;color:var(--ink-2);font-size:11.5px;font-weight:700}.tabbar button.center.on{color:var(--accent-deep)}.tabbar .fab{position:absolute;left:50%;top:-19px;width:54px;height:54px;margin-left:-27px;border-radius:50%;display:grid;place-items:center;color:var(--ink-on);background:linear-gradient(180deg,var(--accent-lift),var(--accent-deep) 78%);box-shadow:inset 0 1px rgba(255,255,255,.34),inset 0 -2px 4px rgba(0,0,0,.1),0 7px 16px rgba(85,120,74,.3),0 2px 5px rgba(44,56,41,.16);transition:transform .16s ease,box-shadow .2s ease}.tabbar button.center.on .fab{box-shadow:inset 0 1px rgba(255,255,255,.34),inset 0 -2px 4px rgba(0,0,0,.1),0 0 0 4px var(--accent-soft),0 7px 16px rgba(85,120,74,.3)}.tabbar button.center:active .fab{transform:scale(.94);box-shadow:inset 0 1px rgba(255,255,255,.3),0 3px 8px rgba(85,120,74,.28)}@media (prefers-reduced-motion: reduce){.tabbar .fab{transition:none}}.tabbar .dot{position:absolute;top:9px;margin-left:15px;width:6px;height:6px;border-radius:50%;background:var(--clay)}@keyframes riseIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:none}}.rise{animation:riseIn .5s cubic-bezier(.22,1,.36,1) both}.fade{animation:fadeIn .4s ease both}.mask{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;background:rgba(44,56,41,.34);backdrop-filter:blur(3px);animation:fadeIn .25s ease both;display:flex;align-items:flex-end}.sheet{width:100%;max-height:92%;background:var(--bg);border-radius:var(--r-xl) var(--r-xl) 0 0;animation:sheetUp .38s cubic-bezier(.22,1,.36,1) both;display:flex;flex-direction:column;overflow:hidden}.sheet-grip{width:38px;height:4px;border-radius:2px;background:var(--line);margin:11px auto 4px;flex:none}.sheet-body{overflow-y:auto;padding:6px var(--pad) 26px}.admin-switch{position:fixed;right:22px;bottom:22px;z-index:80;font-size:13px;padding:10px 17px;box-shadow:var(--shadow)}@media (max-width: 900px){.admin-switch{display:none}}.member-input{width:100%;min-width:0;padding:11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink);font-size:16px}.journey-screen{min-height:0}.panel.journey-panel{overflow:hidden;display:flex;flex-direction:column;padding:0;min-height:0}.journey-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.journey-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 12px 16px}.journey-event{position:relative;border-left:2px solid var(--accent-line);padding:0 0 18px 12px}.journey-event:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);left:-5px;top:4px}.journey-cover{display:block;width:100%;aspect-ratio:3/4;overflow:hidden;border-radius:var(--r-sm);background:var(--surface-2)}.journey-cover img{width:100%;height:100%;object-fit:cover;display:block}.journey-footer{flex:none;padding:12px;border-top:1px solid var(--line);background:var(--surface);box-shadow:0 -4px 18px rgba(50,70,45,.04)}.beauty-entry{margin:16px 16px 0;padding:20px 16px;display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid var(--accent-line);border-radius:var(--r);background:radial-gradient(circle at 90% 10%,rgba(255,255,255,.9),transparent 65%),linear-gradient(130deg,#e6efde,#f6f3e5);box-shadow:0 5px 18px rgba(76,103,65,.06)}.beauty-entry>div{min-width:0}.beauty-entry .eyebrow{font-size:10px}.beauty-entry h2{margin:8px 0;font-family:var(--serif);font-size:22px;line-height:1.5;color:var(--accent-deep)}.beauty-entry p{margin:0;font-size:11px;line-height:1.8;color:var(--ink-2)}.beauty-entry .btn{flex:none;padding:11px 14px;border-radius:999px;box-shadow:0 4px 12px rgba(65,97,51,.14)}.studio-top-banner{flex:none;margin:16px 16px 0}.member-hero{margin:16px 16px 0;gap:12px;min-height:130px}.member-hero-avatar{width:66px;height:66px;flex:none;border-radius:50%;overflow:hidden;background:var(--surface);border:2px solid #fff;box-shadow:0 3px 10px rgba(82,110,83,.133);display:grid;place-items:center;color:var(--accent-deep);font-size:26px}.member-hero-avatar img{width:100%;height:100%;object-fit:cover}.member-hero-copy{min-width:0;flex:1}.member-hero-copy h2{font-size:20px;margin:2px 0 4px;overflow-wrap:anywhere}.member-hero-copy p{font-size:11px;line-height:1.5;overflow-wrap:anywhere}.member-aesthetic-mark{font-size:15px;color:var(--accent-deep)}.member-hero-qr{flex:none;width:80px;text-align:center}.member-hero-qr img{display:block;width:76px;height:76px;border:4px solid #fff;border-radius:6px;image-rendering:pixelated}.member-hero-qr small{display:block;font-size:10px;color:var(--ink-2);margin-top:3px}.member-qr-large{width:240px!important;height:240px!important;object-fit:contain;margin:18px auto;image-rendering:pixelated}@media (max-width:420px){.member-hero{padding:15px 11px;gap:8px}.member-hero-avatar{width:52px;height:52px}.member-hero-qr{width:68px}.member-hero-qr img{width:66px;height:66px}}.skin-archive-report{display:grid;justify-items:center;gap:12px;margin-top:16px}.skin-archive-report img{display:block;width:min(100%,420px);height:auto;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 22px rgba(51,75,58,.125)}
