/* handsfree · 글래스모피즘 판. apple.css(스토어·상세) 또는 styles.css+store.css(데모) 뒤에 읽는다.
   원칙: 구조는 그대로, 면은 반투명 유리(blur + 흰 테두리 + 부드러운 그림자), 배경은 색 번짐. */
:root{--glass:rgba(255,255,255,.58);--glass-strong:rgba(255,255,255,.78);--glass-weak:rgba(255,255,255,.4);--glass-line:rgba(255,255,255,.65);--glass-line-dark:rgba(0,0,0,.06);--glass-shadow:0 10px 36px rgba(31,38,135,.10),inset 0 1px 0 rgba(255,255,255,.7);--blur:blur(18px) saturate(170%);--g1:#c7d7ff;--g2:#ffd6e8;--g3:#d4f5ea;--g4:#fff1c9}
body.theme-scope{--g1:#c7d7ff;--g2:#e3d9ff;--g3:#d6ecff;--g4:#f0f4ff}
body.theme-repost{--g1:#cdeedd;--g2:#e8f5c8;--g3:#d2f0ea;--g4:#f4f9ee}
body.theme-ledger{--g1:#bfe3e0;--g2:#d6e9ff;--g3:#cfe8d8;--g4:#eaf5f3}
body.theme-grant{--g1:#ffd9c2;--g2:#ffe6b8;--g3:#ffd2dc;--g4:#fff4ea}
body{background:#eef1f8;position:relative;min-height:100vh}
body::before{content:"";position:fixed;inset:-20%;z-index:-1;pointer-events:none;background:
  radial-gradient(42% 38% at 12% 10%,var(--g1) 0%,transparent 70%),
  radial-gradient(38% 34% at 88% 18%,var(--g2) 0%,transparent 70%),
  radial-gradient(44% 40% at 70% 85%,var(--g3) 0%,transparent 70%),
  radial-gradient(36% 32% at 20% 80%,var(--g4) 0%,transparent 70%),
  linear-gradient(180deg,#f6f8ff,#eef1f8)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 1px);background-size:26px 26px;opacity:.35}

/* ── 유리 면 공통 ── */
.gnav{background:rgba(20,22,30,.55);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border-bottom:1px solid rgba(255,255,255,.12)}
.localnav{background:var(--glass-weak);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border-bottom:1px solid var(--glass-line)}
.section.fill{background:transparent}
.tile,.why div,.feature-tile,.wcard,.compare-col,.compare-col.ours,.buy-box,.others a,.demo-callout,.faq,.footer,dialog,.store-head .note .mini i{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow)}
.tile{border-radius:28px}.why div,.feature-tile,.wcard,.compare-col,.others a{border-radius:20px}
.others a:hover,.tile:hover{background:var(--glass-strong)}
.compare-col.plain{background:var(--glass-weak)}
.faq{padding:10px 28px;border-radius:20px}.faq details{border-color:var(--glass-line-dark)}
.footer{border-radius:24px 24px 0 0;margin-top:30px;color:#4b515b}.footer .legal{border-color:var(--glass-line-dark)}
.compare-table{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border-radius:20px;overflow:hidden;border:1px solid var(--glass-line);box-shadow:var(--glass-shadow)}
.compare-table th,.compare-table td{border-color:var(--glass-line-dark)}.compare-table th{border-bottom:1px solid rgba(0,0,0,.25)}
.compare-table th:first-child,.compare-table td:first-child{padding-left:24px}
.live,.device{border:1px solid var(--glass-line);box-shadow:0 18px 50px rgba(31,38,135,.16);border-radius:18px}
.live .live-tag{background:rgba(255,255,255,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-color:var(--glass-line)}
.workflow .arrow{color:#8a93b8}
.wcard .input{background:rgba(255,255,255,.5);border:1px solid var(--glass-line)}
.rline{border-color:var(--glass-line-dark)}
.segment{background:rgba(255,255,255,.35);border:1px solid var(--glass-line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.segment button[aria-pressed=true]{background:rgba(255,255,255,.9)}
.ledger{border-color:var(--glass-line-dark)}.ledger .row{border-color:var(--glass-line-dark);background:transparent}
.ledger .row:hover{background:var(--glass-weak);border-radius:12px}
.contents dl div,.support li{border-color:var(--glass-line-dark)}
.hero .sub,.section-sub,.audience{color:#4b515b}
.btn{background:linear-gradient(135deg,#2f7bff,#0b5fd6);box-shadow:0 8px 22px rgba(11,95,214,.28),inset 0 1px 0 rgba(255,255,255,.35);border:0}
.btn:hover{background:linear-gradient(135deg,#3a84ff,#0a56c2)}
.btn.secondary{background:var(--glass);color:#0b5fd6;border:1px solid rgba(11,95,214,.35);box-shadow:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn.secondary:hover{background:#0b5fd6;color:#fff}
.signup-form input[type=email],.signup-form select{background:rgba(255,255,255,.6);border-color:var(--glass-line)}
dialog{border-radius:24px;background:rgba(255,255,255,.72)}dialog::backdrop{background:rgba(20,22,30,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.close{background:rgba(255,255,255,.6);border:1px solid var(--glass-line)}

/* ── 데모(대시보드) ── */
.dashboard-page{background:transparent}
.demo-banner{background:rgba(255,255,255,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-line);color:#4b515b}
.app-shell{max-width:1500px}
.sidebar{background:var(--glass-weak);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border-right:1px solid var(--glass-line)}
.workspace-name{background:var(--glass);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow)}
.side-nav button{color:#30343a}.side-nav button:hover{background:rgba(255,255,255,.45)}
.dashboard-page .side-nav button[aria-current=page]{background:rgba(255,255,255,.75);box-shadow:0 4px 14px rgba(31,38,135,.08);border:1px solid var(--glass-line)}
.side-count{background:rgba(255,255,255,.7)}
.topnav{background:var(--glass-weak)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border-bottom:1px solid var(--glass-line)!important}
.top-nav button:hover{background:rgba(255,255,255,.45)}
.dashboard-page .top-nav button[aria-current=page]{background:rgba(255,255,255,.78);box-shadow:0 4px 14px rgba(31,38,135,.08);border:1px solid var(--glass-line)}
.panel,.project-full,.attention-card,.proposal,.success-box,.review-source,.quote-box,.source-hero,.lane,.dday-hero,.stat-box,.reply-editor,.field-input,.field-textarea,.empty-state,.briefing{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow)}
.panel,.project-full,.source-hero,.lane,.dday-hero{border-radius:20px}
.attention-card,.proposal,.success-box,.review-source,.quote-box{border-radius:14px;box-shadow:none}
.proposal.blocked{background:var(--glass-weak)}
.success-box{background:rgba(214,241,226,.6);border-color:rgba(255,255,255,.7)}
.reply-editor,.field-input,.field-textarea{box-shadow:none;background:rgba(255,255,255,.6)}
.reply-editor:focus,.field-input:focus,.field-textarea:focus{background:rgba(255,255,255,.85)}
.dashboard-page .stat-grid{border:0;padding:0;gap:14px}
.dashboard-page .stat-box,.dashboard-page .stat-box.highlight{border:1px solid var(--glass-line);border-radius:16px;padding:16px 20px!important;min-height:104px;background:var(--glass)}
.dashboard-page .stat-box.highlight{background:var(--glass-strong)}
.task-item,.history-item,.check-row,.project-mini,.agreement-list li,.result-line,.data-table td,.msg,.counter{border-color:var(--glass-line-dark)}
.data-table th{background:transparent}
.dashboard-page .demo-selector{border-color:var(--glass-line-dark)}.dashboard-page .channel-tabs{border-color:var(--glass-line-dark)}
.dashboard-page .tag{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(255,255,255,.55);border:1px solid var(--glass-line)}
.dashboard-page .tag.amber{background:rgba(255,236,204,.75);color:#8d6d3c}.dashboard-page .tag.gray{background:rgba(240,241,243,.7);color:#5e6470}
.dashboard-page .btn{border:0;box-shadow:0 8px 22px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.3)}
.dashboard-page .btn.light{background:rgba(255,255,255,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-line);box-shadow:none}
.dashboard-page .btn.light:hover{background:rgba(255,255,255,.9)}
.msg .bubble{background:rgba(255,255,255,.55);border:1px solid var(--glass-line)}
.msg .avatar{background:rgba(255,255,255,.7);border:1px solid var(--glass-line)}
.source-hero{background:var(--glass)!important;border-color:var(--glass-line)!important}
.source-hero .voice span{background:rgba(255,255,255,.6);border-color:var(--glass-line)}
.lane .excerpt{background:rgba(255,255,255,.45)}.lane .excerpt:after{background:linear-gradient(transparent,rgba(255,255,255,.9))}
.bar-row .track{background:rgba(255,255,255,.55);border:1px solid var(--glass-line)}
.pline .track{background:rgba(255,255,255,.55);border:1px solid var(--glass-line)}
.tstep .num{background:rgba(255,255,255,.7)}.tstep:before{background:rgba(0,0,0,.08)}
.sub-timeline{border-color:rgba(0,0,0,.08)}
.dday-hero{background:var(--glass)!important;border-color:var(--glass-line)!important}
.ring svg circle:first-child{stroke:rgba(255,255,255,.7)}
/* 잔금표: 어두운 유리 */
.theme-ledger .sidebar{background:rgba(15,46,46,.55);border-right:1px solid rgba(255,255,255,.12);color:#e4efed}
.theme-ledger .workspace-name{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);box-shadow:none}
.theme-ledger .side-nav button{color:#e4efed}.theme-ledger .side-nav button:hover{background:rgba(255,255,255,.12)}
.theme-ledger .dashboard-page .side-nav button[aria-current=page],.theme-ledger .side-nav button[aria-current=page]{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.25);box-shadow:none}
.theme-ledger .side-count{background:rgba(255,255,255,.25);color:#fff}
.money-hero{background:rgba(15,46,46,.62);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 50px rgba(15,46,46,.25),inset 0 1px 0 rgba(255,255,255,.2);border-radius:20px}
.money-hero button{border-color:rgba(255,255,255,.18)}
/* 토스트·대화상자 */
.toast{background:rgba(29,33,45,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15)}
.dashboard-page dialog{background:rgba(255,255,255,.75);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-line);border-radius:22px}
.status-line{color:#5c626c}
@media(max-width:760px){.sidebar{border-right:0;border-bottom:1px solid var(--glass-line)}.faq{padding:4px 18px}.tile{border-radius:22px}.footer{border-radius:18px 18px 0 0}}
@media(prefers-reduced-transparency:reduce){:root{--glass:rgba(255,255,255,.92);--glass-strong:#fff;--glass-weak:rgba(255,255,255,.85);--blur:none}}
