:root{--bg-stone: #f3e6da;--glass-bg: rgba(252, 248, 244, .78);--glass-border: rgba(255, 253, 250, .85);--shadow-spa: 0 16px 42px rgba(112, 82, 66, .1);--text-espresso: #43342d;--text-taupe: #8d766b;--champagne-accent: #b38c72;--champagne-deep: #8f6b53;--champagne-soft: rgba(179, 140, 114, .14);--sage-soft: rgba(154, 174, 162, .18);--radius-xl: 24px;--radius-lg: 18px}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;overflow:hidden;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,sans-serif;color:var(--text-espresso);background:var(--bg-stone);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}#app{position:relative}#spa-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:none}#spa-canvas.strip-cursor{cursor:grab}#spa-canvas.strip-cursor:active{cursor:grabbing}.glass{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:var(--shadow-spa)}.top-hud{position:fixed;top:20px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;gap:14px;z-index:20;pointer-events:none}.top-hud>*{pointer-events:auto}.brand-card{display:flex;align-items:center;gap:12px;padding:10px 18px;border-radius:999px}.aroma-candle{width:9px;height:9px;border-radius:50%;background:radial-gradient(circle,#ffe8c8,#d4a37a);box-shadow:0 0 12px 4px #e8b88a73;animation:candleBreath 3.6s ease-in-out infinite}@keyframes candleBreath{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.18);opacity:1}}.brand-title{font-family:Cormorant Garamond,"Noto Serif KR",Georgia,serif;font-size:20px;font-weight:600;letter-spacing:.02em;color:var(--text-espresso);line-height:1.05}.brand-title em{font-style:italic;font-weight:500;color:var(--champagne-accent)}.brand-sub{font-size:10.5px;letter-spacing:.04em;color:var(--text-taupe);margin-top:2px}.stats-pill{min-width:244px;padding:9px 18px;border-radius:999px}.progress-header{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;margin-bottom:5px}.progress-label{font-family:"Noto Serif KR",serif;font-weight:600;font-size:12px;color:var(--text-espresso)}#clean-percent{font-family:Cormorant Garamond,serif;font-size:16px;font-weight:600;color:var(--champagne-deep)}.progress-track{width:100%;height:4px;border-radius:999px;background:#a484722e;overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#dfc0a6,#b0886d);transition:width .35s cubic-bezier(.22,1,.36,1)}.stats-meta{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:11px;color:var(--text-taupe)}.quick-actions{display:flex;align-items:center;gap:8px}.icon-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;font-family:inherit;font-size:12px;font-weight:550;letter-spacing:-.01em;color:var(--text-espresso);cursor:pointer;transition:transform .18s ease,background .2s ease,border-color .2s ease}.icon-btn:hover{transform:translateY(-1px);background:#fffdfaf0}.icon-btn.active{border-color:#b38c728c;color:var(--champagne-deep)}.icon-btn.accent-btn{background:linear-gradient(135deg,#b89278,#99745c);color:#fffdfb;border-color:transparent}.icon-btn.accent-btn:hover{background:linear-gradient(135deg,#c29c82,#a37d64)}.guide-toast{position:fixed;top:86px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:10px;padding:8px 18px;border-radius:999px;font-size:12.5px;font-weight:500;color:var(--text-espresso);z-index:15;pointer-events:none;max-width:min(92vw,620px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform .28s ease,background .28s ease}.guide-toast.highlight{background:#fffbf6f5;border-color:#b38c728c;transform:translate(-50%) scale(1.02)}.step-badge{padding:3px 9px;border-radius:999px;background:var(--champagne-soft);color:var(--champagne-deep);font-family:Cormorant Garamond,serif;font-size:11px;font-weight:600;letter-spacing:.08em}.side-panel{position:fixed;top:90px;right:24px;width:298px;padding:16px;border-radius:var(--radius-xl);z-index:18;transition:opacity .24s ease,transform .24s cubic-bezier(.22,1,.36,1)}.side-panel.collapsed{opacity:0;pointer-events:none;transform:translate(22px)}.panel-tabs{display:grid;grid-template-columns:1fr 1fr;padding:3px;border-radius:999px;background:#a486741c;margin-bottom:14px}.tab-btn{border:none;background:transparent;padding:7px 8px;border-radius:999px;font-family:inherit;font-size:12px;font-weight:600;color:var(--text-taupe);cursor:pointer;transition:all .2s ease}.tab-btn.active{background:#fffdfb;color:var(--text-espresso);box-shadow:0 2px 10px #60443414}.tab-content{display:none}.tab-content.active{display:block}.section-label{font-family:"Noto Serif KR",serif;font-size:11.5px;font-weight:600;color:var(--text-taupe);margin-bottom:8px}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}.preset-chip{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 11px;border-radius:13px;border:1px solid rgba(179,140,114,.18);background:#fffdfa8f;font-family:inherit;text-align:left;cursor:pointer;transition:all .18s ease}.preset-chip strong{font-size:12px;font-weight:650;color:var(--text-espresso)}.preset-chip small{font-size:10.5px;color:var(--text-taupe)}.preset-chip:hover{background:#fffdfaeb}.preset-chip.active{border-color:var(--champagne-accent);background:#faf2eaf2}.sliders-group{display:flex;flex-direction:column;gap:11px;margin-bottom:14px}.slider-row{display:flex;flex-direction:column;gap:5px}.slider-head{display:flex;justify-content:space-between;font-size:12px;font-weight:550;color:var(--text-espresso)}.slider-head output{font-weight:650;color:var(--champagne-deep)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:999px;background:#aa8a7838;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;background:var(--champagne-accent);border:2.5px solid #fffdfb;box-shadow:0 2px 7px #704e3a47;cursor:pointer}.primary-full-btn{width:100%;padding:10.5px 14px;border:none;border-radius:999px;background:linear-gradient(135deg,#ba957b,#98735b);color:#fffdfb;font-family:inherit;font-size:12.5px;font-weight:650;letter-spacing:.01em;cursor:pointer;transition:transform .16s ease,filter .16s ease}.primary-full-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}.binaural-tip{padding:9px 11px;border-radius:12px;background:#bc9a841c;font-size:11.5px;line-height:1.48;color:var(--champagne-deep);margin-bottom:11px}.stereo-test-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:2px}.bgm-chip-row{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:13px}.bgm-chip{padding:7px 4px;border-radius:11px;border:1px solid rgba(179,140,114,.24);background:#fffdfaa6;font-family:inherit;font-size:11px;font-weight:600;color:var(--text-taupe);cursor:pointer;transition:all .16s ease}.bgm-chip:hover{background:#fff;color:var(--text-espresso)}.bgm-chip.active{background:linear-gradient(135deg,#c39d82,#9e785f);border-color:transparent;color:#fffdfb;box-shadow:0 4px 12px #84604c33}.stereo-btn{padding:7.5px 8px;border-radius:999px;border:1px solid rgba(179,140,114,.34);background:#fffdfac7;font-family:inherit;font-size:11px;font-weight:600;color:var(--champagne-deep);cursor:pointer;transition:background .16s ease}.stereo-btn:hover{background:#fff}.tool-dock{position:fixed;bottom:18px;left:50%;transform:translate(-50%);display:flex;align-items:stretch;gap:6px;padding:8px 11px;border-radius:26px;z-index:20;max-width:96vw;overflow-x:auto}.dock-divider{display:flex;align-items:center;justify-content:center;padding:0 3px;position:relative}.dock-divider:before{content:"";position:absolute;top:10px;bottom:10px;left:50%;width:1px;background:#b38c7247}.dock-divider span{position:relative;padding:3px 4px;border-radius:6px;background:#f8f4eff2;font-size:9.5px;font-weight:650;color:#709b94;letter-spacing:-.02em}.tool-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:82px;padding:8px;border-radius:18px;border:1px solid transparent;background:#fffdfa73;font-family:inherit;color:var(--text-espresso);cursor:pointer;transition:transform .18s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.tool-card.moisture-card{background:#f4fcfb85}.tool-card:hover{background:#fffdfae0;transform:translateY(-2px)}.tool-card.active{background:#fffdfb;border-color:#b38c72a6;box-shadow:0 8px 20px #84604c24;transform:translateY(-3px)}.tool-card.moisture-card.active{background:#f9fffe;border-color:#78b6aeb8;box-shadow:0 8px 20px #629e9629}.tool-key{position:absolute;top:5px;left:8px;font-family:Cormorant Garamond,serif;font-size:10px;font-weight:600;color:var(--text-taupe);opacity:.78}.tool-svg{width:26px;height:26px;margin-bottom:3px}.tool-card strong{font-size:11.5px;font-weight:650;letter-spacing:-.02em;white-space:nowrap}.tool-card small{font-size:9.8px;color:var(--text-taupe);margin-top:2px;white-space:nowrap}@media(max-width:1080px){.brand-sub{display:none}.stats-pill{min-width:190px}.icon-btn span{display:none}}@media(max-width:720px){.top-hud{top:12px;left:12px;right:12px;flex-wrap:wrap}.guide-toast{top:118px;font-size:11.5px}.side-panel{top:118px;right:12px;left:12px;width:auto}.tool-card{min-width:76px;padding:7px 6px}.tool-card small{display:none}}
