:root{--bg: #F1E9D9;--surface: #FFFDF8;--surface-2: #F8F1E3;--line: #E3D8C4;--line-soft: #EEE6D5;--ink: #2E2A24;--ink-2: #5C5346;--ink-3: #857A69;--ink-4: #A79B87;--primary: #B65A3E;--primary-deep: #8F4530;--primary-soft: #F6E3D8;--work-deep: #E9BCA2;--ok: #4E7A5E;--ok-soft: #E4EEE5;--warn: #B07A24;--warn-soft: #F6EAD0;--danger: #B23A34;--danger-soft:#F6DED9;--fz-display: 44px;--fz-title: 20px;--fz-h: 15px;--fz-body: 14px;--fz-label: 12px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-pill: 999px;--shadow: 0 2px 10px rgba(70,52,38,.06);--shadow-lg: 0 8px 24px rgba(70,52,38,.12);--font-display: "Georgia", "Songti SC", "STSong", serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%}#app{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);font-size:var(--fz-body);line-height:1.6;overflow:hidden}:root[data-theme=terracotta] .app{max-width:430px;margin:0 auto;height:100%;display:flex;flex-direction:column;position:relative;background:radial-gradient(rgba(120,90,60,.03) 1px,transparent 1px),var(--bg);background-size:4px 4px}:root[data-theme=terracotta] .brandbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5) var(--sp-2)}:root[data-theme=terracotta] .brandbar .logo{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:3px;color:var(--primary-deep)}:root[data-theme=terracotta] .scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 var(--sp-4) 110px}:root[data-theme=terracotta] .view[hidden]{display:none}:root[data-theme=terracotta] .view:not([hidden]){display:block;animation:viewIn .2s ease}@keyframes viewIn{0%{opacity:0;transform:translateY(6px)}}:root[data-theme=terracotta] .tabbar{position:absolute;left:0;right:0;bottom:0;max-width:430px;margin:0 auto;display:flex;background:#fffdf8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:8px 12px calc(10px + env(safe-area-inset-bottom));z-index:20}:root[data-theme=terracotta] .tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 0;border-radius:var(--r-sm);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink-4);transition:color .15s;background:none;border:0;font:inherit}:root[data-theme=terracotta] .tab svg{width:22px;height:22px}:root[data-theme=terracotta] .tab span{font-size:10px;letter-spacing:1px}:root[data-theme=terracotta] .tab[aria-selected=true]{color:var(--primary)}:root[data-theme=terracotta] .tab[aria-selected=true] svg{stroke-width:2.3}:root[data-theme=terracotta] .tab[aria-selected=true] span{font-weight:700}:root[data-theme=terracotta] .datehead{margin:var(--sp-2) 2px var(--sp-4)}:root[data-theme=terracotta] .datehead .dh-month{font-size:var(--fz-label);color:var(--ink-3);text-align:right;letter-spacing:.5px;margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .daystrip{display:flex;gap:4px}:root[data-theme=terracotta] .ds-cell{flex:1 1 0;min-width:0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:58px;padding:5px 1px 11px;border-radius:var(--r-sm);border:1px solid transparent;background:var(--surface-2);color:var(--ink-2);line-height:1.15;overflow:hidden;font:inherit;cursor:pointer;appearance:none;-webkit-appearance:none}:root[data-theme=terracotta] .ds-cell:active{transform:scale(.97)}:root[data-theme=terracotta] .ds-cell .ds-meta{font-size:var(--fz-label);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;max-width:100%}:root[data-theme=terracotta] .ds-cell .ds-shift{margin-top:3px;font-size:var(--fz-body);font-weight:700;line-height:1.1;color:var(--ink);width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root[data-theme=terracotta] .ds-cell:after{content:"";position:absolute;left:9px;right:9px;bottom:5px;height:3px;border-radius:999px;background:transparent}:root[data-theme=terracotta] .ds-cell.rest:after{background:var(--ok)}:root[data-theme=terracotta] .ds-cell.work:after{background:var(--primary)}:root[data-theme=terracotta] .ds-cell.night:after{background:var(--primary-deep)}:root[data-theme=terracotta] .ds-cell.none{background:none;border-color:var(--line-soft);border-style:dashed}:root[data-theme=terracotta] .ds-cell.none .ds-shift{color:var(--ink-4);font-weight:400}:root[data-theme=terracotta] .ds-cell.none:after{background:var(--line-soft)}:root[data-theme=terracotta] .ds-cell[aria-current=date]{border-color:var(--primary);border-width:2px}:root[data-theme=terracotta] .ds-cell[aria-current=date] .ds-meta{color:var(--primary-deep)}:root[data-theme=terracotta] .datehead .greet{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-3)}:root[data-theme=terracotta] .datehead .greet .greet-l{display:flex;align-items:baseline;gap:var(--sp-2);min-width:0}:root[data-theme=terracotta] .datehead .greet b{font-size:var(--fz-body);color:var(--ink)}:root[data-theme=terracotta] .datehead .dh-note{margin-top:var(--sp-1);font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .ds-tmr{flex:none;display:inline-flex;align-items:baseline;gap:5px;padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid transparent;cursor:pointer;font-family:inherit;white-space:nowrap}:root[data-theme=terracotta] .ds-tmr:active{transform:scale(.97)}:root[data-theme=terracotta] .ds-tmr-when{font-size:10px;color:var(--ink-3)}:root[data-theme=terracotta] .ds-tmr-code{font-size:var(--fz-label);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .ds-tmr .ds-bar{align-self:center;width:14px;height:3px;border-radius:999px;background:var(--line-soft)}:root[data-theme=terracotta] .ds-tmr.rest .ds-bar{background:var(--ok)}:root[data-theme=terracotta] .ds-tmr.work .ds-bar{background:var(--primary)}:root[data-theme=terracotta] .ds-tmr.night .ds-bar{background:var(--primary-deep)}:root[data-theme=terracotta] .ds-tmr.none .ds-bar{display:none}:root[data-theme=terracotta] .card{position:relative;background:var(--surface);border-radius:var(--r-md);padding:var(--sp-4);margin-bottom:var(--sp-3);border:1px solid var(--line);box-shadow:var(--shadow)}:root[data-theme=terracotta] .tape{position:absolute;top:-9px;left:50%;transform:translate(-50%) rotate(-1.5deg);width:74px;height:20px;border-radius:2px;opacity:.85;background-color:var(--primary-soft);background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.35) 0 2px,transparent 2px 7px);box-shadow:0 1px 3px #46342614}:root[data-theme=terracotta] .card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .card-head h3{margin:0;font-size:var(--fz-h);font-weight:700;color:var(--ink);letter-spacing:.5px}:root[data-theme=terracotta] .card-head .sub{font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .hero{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--sp-5) var(--sp-4) var(--sp-4);margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .hero .baby{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fz-label);color:var(--ink-3);margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .hero .baby .av{width:26px;height:26px;border-radius:50%;background:var(--primary-soft);display:flex;align-items:center;justify-content:center;font-size:15px}:root[data-theme=terracotta] .hero .baby b{color:var(--ink);font-size:var(--fz-body)}:root[data-theme=terracotta] .hero .baby .cnt{margin-left:auto;background:var(--primary-soft);color:var(--primary-deep);padding:3px 10px;border-radius:var(--r-pill);font-size:11px;font-weight:700}:root[data-theme=terracotta] .hero .since-lbl{font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .hero .since-big{font-family:var(--font-display);font-size:var(--fz-display);font-weight:700;color:var(--ink);letter-spacing:-1px;line-height:1.1;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .hero .since-big small{font-size:18px;font-weight:600;color:var(--ink-3);margin:0 4px 0 3px;letter-spacing:0}:root[data-theme=terracotta] .hero .since-next{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-2);font-size:var(--fz-label);color:var(--ink-2)}:root[data-theme=terracotta] .hero .since-next .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft);flex-shrink:0}:root[data-theme=terracotta] .hero .since-next b{color:var(--ok)}:root[data-theme=terracotta] .edit-link{margin-left:auto;flex-shrink:0;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font-family:inherit;font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--r-pill);cursor:pointer}:root[data-theme=terracotta] .edit-link:active{transform:scale(.95);background:var(--primary-soft);border-color:var(--primary)}:root[data-theme=terracotta] .quick{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-2);margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px dashed var(--line)}:root[data-theme=terracotta] .qbtn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:var(--sp-3) var(--sp-2);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;font-family:inherit;transition:transform .1s,background .15s,border-color .15s;color:var(--ink)}:root[data-theme=terracotta] .qbtn:active{transform:scale(.95);background:var(--primary-soft);border-color:var(--primary)}:root[data-theme=terracotta] .qbtn .qi{font-size:24px;line-height:1}:root[data-theme=terracotta] .qbtn .qt{font-size:var(--fz-label);font-weight:700}:root[data-theme=terracotta] .qbtn .qh{font-size:10px;color:var(--ink-3)}:root[data-theme=terracotta] .jot{display:flex;flex-direction:column;gap:var(--sp-3)}:root[data-theme=terracotta] .jot-btns{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2)}:root[data-theme=terracotta] .jot-btns.one{grid-template-columns:1fr}:root[data-theme=terracotta] .jbtn{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);cursor:pointer;font-family:inherit;color:var(--ink);transition:transform .1s,background .15s,border-color .15s;text-align:left}:root[data-theme=terracotta] .jbtn:active{transform:scale(.97);background:var(--surface-2);border-color:var(--ink-4)}:root[data-theme=terracotta] .jbtn .ji{font-size:20px;line-height:1;flex-shrink:0}:root[data-theme=terracotta] .jbtn .jt{font-size:var(--fz-body);font-weight:700}:root[data-theme=terracotta] .jbtn .jh{font-size:10px;color:var(--ink-3);margin-left:auto}:root[data-theme=terracotta] .jot-result{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}:root[data-theme=terracotta] .jr-empty{padding:var(--sp-4);text-align:center;font-size:var(--fz-label);color:var(--ink-4)}:root[data-theme=terracotta] .jr-head{display:flex;align-items:baseline;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4) var(--sp-2)}:root[data-theme=terracotta] .jr-head b{font-size:var(--fz-label);color:var(--ink-3);font-weight:700}:root[data-theme=terracotta] .jr-all{background:none;border:none;font-family:inherit;font-size:var(--fz-label);color:var(--primary);cursor:pointer;padding:0}:root[data-theme=terracotta] .jr-all:active{color:var(--primary-deep)}:root[data-theme=terracotta] .jr-sum{margin-left:auto;font-family:var(--font-display);font-size:18px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .jr-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);border-top:1px dashed var(--line-soft)}:root[data-theme=terracotta] .jr-ic{width:26px;height:26px;border-radius:var(--r-sm);flex-shrink:0;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:14px}:root[data-theme=terracotta] .jr-ic.inc{background:var(--ok-soft);border-radius:50%}:root[data-theme=terracotta] .jr-m{flex:1;min-width:0;font-size:var(--fz-body);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=terracotta] .jr-m .jr-t{font-size:11px;color:var(--ink-4);margin-left:6px;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .jr-v{flex-shrink:0;font-weight:700;font-size:var(--fz-body);color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .jr-v.inc{color:var(--ok)}:root[data-theme=terracotta] .jr-v.exp{color:var(--primary)}:root[data-theme=terracotta] .jr-del{flex-shrink:0;width:26px;height:26px;padding:0;border:none;background:transparent;border-radius:50%;color:var(--ink-4);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}:root[data-theme=terracotta] .jr-del:hover{background:var(--danger-soft);color:var(--danger)}:root[data-theme=terracotta] .jr-del svg{width:14px;height:14px}:root[data-theme=terracotta] .glance{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);overflow:hidden}:root[data-theme=terracotta] .gl-row{display:flex;align-items:center;width:100%;border-bottom:1px dashed var(--line-soft);padding-right:var(--sp-2)}:root[data-theme=terracotta] .gl-row:last-child{border-bottom:none}:root[data-theme=terracotta] .gl-hit{flex:1;min-width:0;display:flex;align-items:center;gap:var(--sp-3);text-align:left;padding:var(--sp-3) var(--sp-4);background:transparent;border:none;cursor:pointer;font-family:inherit;transition:background .12s}:root[data-theme=terracotta] .gl-hit:active{background:var(--surface-2)}:root[data-theme=terracotta] .gl-ic{width:30px;height:30px;border-radius:var(--r-sm);flex-shrink:0;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:15px}:root[data-theme=terracotta] .gl-main{flex:1;min-width:0}:root[data-theme=terracotta] .gl-main b{display:block;font-size:var(--fz-body);font-weight:600;color:var(--ink)}:root[data-theme=terracotta] .gl-main small{display:block;font-size:11px;color:var(--ink-3);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=terracotta] .gl-val{flex-shrink:0;display:flex;align-items:center;gap:6px;font-size:var(--fz-body);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .gl-val em{font-style:normal;font-weight:600;color:var(--ink-3)}:root[data-theme=terracotta] .gl-val em.gl-none{color:var(--ink-4);font-weight:500}:root[data-theme=terracotta] .gl-go{flex-shrink:0;font-size:16px;color:var(--ink-4);margin-left:2px}:root[data-theme=terracotta] .sec-title{display:flex;align-items:baseline;justify-content:space-between;margin:var(--sp-2) 2px var(--sp-4)}:root[data-theme=terracotta] .sec-title h2{margin:0;font-family:var(--font-display);font-size:var(--fz-title);font-weight:700;color:var(--ink);letter-spacing:1px}:root[data-theme=terracotta] .sec-title .sub{font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .rc-hero{display:block;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:var(--sp-4);margin-bottom:var(--sp-3);cursor:pointer;font-family:inherit;transition:transform .12s,box-shadow .12s}:root[data-theme=terracotta] .rc-hero:active{transform:scale(.99)}:root[data-theme=terracotta] .rc-hero .rh-top{display:flex;align-items:center;gap:var(--sp-2)}:root[data-theme=terracotta] .rc-hero .rh-emoji{font-size:18px;line-height:1}:root[data-theme=terracotta] .rc-hero .rh-name{flex:1;min-width:0;font-size:var(--fz-h);font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .rc-hero .rh-go{font-size:18px;color:var(--ink-4)}:root[data-theme=terracotta] .rc-hero .rh-mid{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-3);margin-top:var(--sp-3)}:root[data-theme=terracotta] .rc-hero .rh-big{font-family:var(--font-display);font-size:36px;line-height:1;color:var(--primary-deep)}:root[data-theme=terracotta] .rc-hero .rh-big em{font-style:normal;font-size:var(--fz-body);color:var(--ink-3);margin-left:3px}:root[data-theme=terracotta] .rc-hero .rh-biglabel{font-size:var(--fz-label);color:var(--ink-3);margin-top:var(--sp-1)}:root[data-theme=terracotta] .rc-hero .rh-state{font-size:var(--fz-label);color:var(--ink-2);text-align:right;padding-bottom:2px}:root[data-theme=terracotta] .rc-hero .rh-state.none{color:var(--ink-4)}:root[data-theme=terracotta] .rc-hero .rh-spark{display:flex;align-items:flex-end;gap:3px;height:26px;margin-top:var(--sp-4)}:root[data-theme=terracotta] .rc-hero .rh-spark i{flex:1;min-height:2px;border-radius:2px 2px 0 0;background:var(--primary-soft)}:root[data-theme=terracotta] .rc-hero .rh-spark i.cur{background:var(--primary)}:root[data-theme=terracotta] .rc-hero .rh-sparklabel{font-size:var(--fz-label);color:var(--ink-4);margin-top:var(--sp-1)}:root[data-theme=terracotta] .rc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}:root[data-theme=terracotta] .rc-tile{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);padding:var(--sp-3) var(--sp-2);cursor:pointer;font-family:inherit;text-align:center;transition:transform .12s,box-shadow .12s}:root[data-theme=terracotta] .rc-tile:active{transform:scale(.97)}:root[data-theme=terracotta] .rc-tile .rt-emoji{width:40px;height:40px;border-radius:var(--r-md);background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:20px}:root[data-theme=terracotta] .rc-tile .rt-name{font-size:var(--fz-body);font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .rc-tile .rt-stat{font-size:var(--fz-body);font-weight:600;color:var(--primary-deep)}:root[data-theme=terracotta] .rc-tile .rt-stat.none{color:var(--ink-4);font-weight:500}:root[data-theme=terracotta] .rc-tile .rt-note{font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .me-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 2px;border-bottom:1px dashed var(--line-soft);cursor:pointer}:root[data-theme=terracotta] .me-item:last-child{border-bottom:none}:root[data-theme=terracotta] .me-item .ic{width:34px;height:34px;border-radius:var(--r-sm);flex-shrink:0;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:17px}:root[data-theme=terracotta] .me-item .nm{flex:1;font-size:var(--fz-body);color:var(--ink)}:root[data-theme=terracotta] .me-item .go{font-size:16px;color:var(--ink-4)}:root[data-theme=terracotta] .placeholder{text-align:center;padding:var(--sp-6) var(--sp-5);color:var(--ink-3);font-size:var(--fz-label);line-height:2}:root[data-theme=terracotta] .modbar{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-2) 0 var(--sp-4)}:root[data-theme=terracotta] .modbar .back{width:32px;height:32px;flex-shrink:0;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-size:20px;line-height:1;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:center}:root[data-theme=terracotta] .modbar .back:active{transform:scale(.94);background:var(--primary-soft)}:root[data-theme=terracotta] .modbar .mt{font-family:var(--font-display);font-size:var(--fz-title);font-weight:700;color:var(--ink);letter-spacing:1px}:root[data-theme=terracotta] .modbar .from{margin-left:auto;font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .seg{display:flex;gap:4px;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md)}:root[data-theme=terracotta] .seg button{flex:1;padding:8px 0;border:none;background:transparent;cursor:pointer;font-family:inherit;font-size:var(--fz-body);font-weight:600;color:var(--ink-3);border-radius:var(--r-sm);transition:all .15s}:root[data-theme=terracotta] .seg button[aria-selected=true]{background:var(--surface);color:var(--primary);font-weight:700;box-shadow:var(--shadow)}:root[data-theme=terracotta] .rec-row{display:flex;gap:11px;margin-top:var(--sp-4);margin-bottom:var(--sp-4)}:root[data-theme=terracotta] .rec-btn{flex:1;min-height:64px;padding:12px 8px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-family:inherit;font-size:var(--fz-body);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;transition:transform .1s,background .15s,border-color .15s}:root[data-theme=terracotta] .rec-btn:active{transform:scale(.97);box-shadow:none}:root[data-theme=terracotta] .rec-btn .ri{width:36px;height:36px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;font-size:18px;line-height:1}:root[data-theme=terracotta] .tone-pink{background:#fbe9e2}:root[data-theme=terracotta] .tone-green{background:#e6f0ea}:root[data-theme=terracotta] .tone-blue{background:#e8eff6}:root[data-theme=terracotta] .tone-gold{background:#f7efdd}:root[data-theme=terracotta] .rv-hd{display:flex;align-items:baseline;gap:var(--sp-2);margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .rv-hd .t{font-family:var(--font-display);font-size:var(--fz-h);font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .rv-hd .x{margin-left:auto;font-size:var(--fz-label);color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .rv-hd .rv-pick{margin-left:auto;padding:6px 2px;border:none;background:none;font-family:inherit;font-size:var(--fz-label);color:var(--primary);cursor:pointer}:root[data-theme=terracotta] .rv-hd .x+.rv-pick,:root[data-theme=terracotta] .rv-hd .rv-pick+.rv-pick{margin-left:0}:root[data-theme=terracotta] .rv-hd .rv-pick:active{color:var(--primary-deep)}:root[data-theme=terracotta] .timeline{padding:0}:root[data-theme=terracotta] .tl-row{display:flex;align-items:center;gap:11px;padding:11px 10px 11px 14px;margin-bottom:9px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow)}:root[data-theme=terracotta] .tl-row:last-child{margin-bottom:0}:root[data-theme=terracotta] .tl-t{width:42px;flex-shrink:0;font-size:var(--fz-label);font-weight:600;color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .tl-ic{width:32px;height:32px;border-radius:var(--r-sm);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:16px}:root[data-theme=terracotta] .tl-m{flex:1;min-width:0}:root[data-theme=terracotta] .tl-m b{font-size:var(--fz-body);color:var(--ink);font-weight:600}:root[data-theme=terracotta] .tl-m>span{display:block;font-size:11px;color:var(--ink-3);margin-top:1px}:root[data-theme=terracotta] .tl-acts{display:flex;align-items:center;gap:2px;flex-shrink:0;margin-left:4px;padding-left:8px;border-left:1px solid var(--line-soft)}:root[data-theme=terracotta] .tl-acts .ed-btn,:root[data-theme=terracotta] .tl-acts .tl-del{opacity:.55;border-radius:10px}:root[data-theme=terracotta] .tl-acts .ed-btn:hover,:root[data-theme=terracotta] .tl-acts .tl-del:hover{opacity:1}:root[data-theme=terracotta] .tl-del{flex-shrink:0;width:32px;height:32px;padding:0;border:none;background:transparent;border-radius:10px;color:var(--ink-4);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}:root[data-theme=terracotta] .tl-del svg{width:16px;height:16px}:root[data-theme=terracotta] .tl-del:hover{background:var(--danger-soft);color:var(--danger)}:root[data-theme=terracotta] .tl-tag{font-size:10px;font-weight:700;padding:1px 7px;border-radius:var(--r-pill);margin-left:6px}:root[data-theme=terracotta] .tl-tag.warn{background:var(--warn-soft);color:var(--warn)}:root[data-theme=terracotta] .tl-tag.danger{background:var(--danger-soft);color:var(--danger)}:root[data-theme=terracotta] .tl-cross{color:var(--primary-deep);font-weight:600}:root[data-theme=terracotta] .rv-empty{text-align:center;color:var(--ink-3);font-size:var(--fz-label);padding:var(--sp-5) 0;line-height:1.9}:root[data-theme=terracotta] .rv-empty .ico{font-size:26px;opacity:.5;display:block;margin-bottom:4px}:root[data-theme=terracotta] .growth-list{display:flex;flex-direction:column;gap:var(--sp-2)}:root[data-theme=terracotta] .gl-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3) var(--sp-3)}:root[data-theme=terracotta] .glc-hd{display:flex;align-items:baseline;gap:var(--sp-2);margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .glc-date{font-size:var(--fz-body);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .glc-age{font-size:11px;color:var(--ink-4)}:root[data-theme=terracotta] .gl-del{flex-shrink:0;margin-left:auto;width:26px;height:26px;padding:0;border:none;background:transparent;border-radius:50%;color:var(--ink-4);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}:root[data-theme=terracotta] .gl-del:hover{background:var(--danger-soft);color:var(--danger)}:root[data-theme=terracotta] .gl-del svg{width:14px;height:14px}:root[data-theme=terracotta] .glc-body{display:flex;gap:var(--sp-2)}:root[data-theme=terracotta] .glc-cell{flex:1;display:flex;flex-direction:column;gap:1px}:root[data-theme=terracotta] .glc-k{font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .glc-k i{font-style:normal;margin-left:2px;color:var(--ink-4)}:root[data-theme=terracotta] .glc-v{font-family:var(--font-display);font-size:20px;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.15}:root[data-theme=terracotta] .gl-more{display:block;width:100%;margin-top:var(--sp-2);padding:8px 0;background:none;border:none;color:var(--primary);font-size:var(--fz-label);font-family:inherit;cursor:pointer}:root[data-theme=terracotta] .gl-more:active{color:var(--primary-deep)}:root[data-theme=terracotta] .tk-more{display:block;width:100%;padding:8px 0;background:none;border:none;border-top:1px dashed var(--line-soft);font-family:inherit;font-size:var(--fz-label);color:var(--primary);cursor:pointer}:root[data-theme=terracotta] .tk-more:active{color:var(--primary-deep)}:root[data-theme=terracotta] .glc-hd .ed-btn{margin-left:auto}:root[data-theme=terracotta] .g-cap{font-size:var(--fz-label);color:var(--ink-3);margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .g-cols{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .gr-col{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--sp-2) var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);font-family:inherit;cursor:pointer;text-align:left}:root[data-theme=terracotta] .gr-col.active{border-color:var(--primary);background:var(--primary-soft)}:root[data-theme=terracotta] .gr-k{font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .gr-k i{font-style:normal;margin-left:2px;color:var(--ink-4)}:root[data-theme=terracotta] .gr-v{font-family:var(--font-display);font-size:26px;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .gr-col.active .gr-v{color:var(--primary)}:root[data-theme=terracotta] .gr-p{font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .gr-d{font-size:11px;font-style:normal;color:var(--ink-4);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .gr-d.up{color:var(--ok)}:root[data-theme=terracotta] .growth-wrap{position:relative}:root[data-theme=terracotta] .growth-svg{width:100%;height:auto;display:block;margin-top:var(--sp-2)}:root[data-theme=terracotta] .gc-grid{stroke:var(--line-soft);stroke-width:1}:root[data-theme=terracotta] .gc-band{fill:var(--primary-soft);opacity:.5}:root[data-theme=terracotta] .gc-p50{fill:none;stroke:var(--ink-4);stroke-width:1.5;stroke-dasharray:4 3}:root[data-theme=terracotta] .gc-line{fill:none;stroke:var(--primary);stroke-width:2.5;stroke-linejoin:round}:root[data-theme=terracotta] .gc-dot{fill:var(--surface);stroke:var(--primary);stroke-width:2}:root[data-theme=terracotta] .gc-dot.cur{fill:var(--primary)}:root[data-theme=terracotta] .gc-axis{font-size:9px;fill:var(--ink-4);font-family:var(--font-body)}:root[data-theme=terracotta] .gc-hit{position:absolute;width:22px;height:22px;transform:translate(-50%,-50%);cursor:pointer;border-radius:50%}:root[data-theme=terracotta] .gc-hit:focus-visible{outline:2px solid var(--primary);outline-offset:2px}:root[data-theme=terracotta] .gc-pop b{color:#fdf6ec}:root[data-theme=terracotta] .gc-pop .gc-sub{color:#e8c9bb;font-size:10px;margin-top:2px}:root[data-theme=terracotta] .sex-opts{flex:1;display:flex;gap:var(--sp-2)}:root[data-theme=terracotta] .sex-opt{flex:1;padding:10px 0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);font-family:inherit;font-size:var(--fz-label);color:var(--ink-2);cursor:pointer}:root[data-theme=terracotta] .sex-opt[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta]{--rb-sleep: #B45B3D;--rb-sleep-deep: #96452B;--rb-ghost: #D8A88F;--rb-ruler-day: #F1E9D8;--rb-ruler-night: #5D4A3D;--rb-bandx: 48px}:root[data-theme=terracotta] .rv-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);padding:var(--sp-4);margin-bottom:var(--sp-4)}:root[data-theme=terracotta] .ed-btn{flex-shrink:0;width:32px;height:32px;padding:0;border:none;background:transparent;border-radius:50%;color:var(--ink-4);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}:root[data-theme=terracotta] .ed-btn svg{width:16px;height:16px}:root[data-theme=terracotta] .ed-btn:hover{background:var(--primary-soft);color:var(--primary)}:root[data-theme=terracotta] .rv-seg{display:flex;gap:6px;margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .rv-seg button{flex:1;padding:6px 0;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink-3);font-size:var(--fz-label);font-family:inherit;cursor:pointer}:root[data-theme=terracotta] .rv-seg.ft-seg button{white-space:nowrap;padding:9px 2px;font-size:11px}:root[data-theme=terracotta] .rv-seg button[aria-selected=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .minibar{display:flex;align-items:flex-end;gap:var(--sp-2);height:108px;padding-top:18px;border-bottom:1px solid var(--line)}:root[data-theme=terracotta] .minibar.dense{gap:3px}:root[data-theme=terracotta] .minibar.dense .mb-col .l{font-size:9px;margin-top:4px}:root[data-theme=terracotta] .minibar.dense .mb-col .bar{width:72%}:root[data-theme=terracotta] .mb-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}:root[data-theme=terracotta] .mb-col .v{font-size:11px;line-height:14px;height:14px;margin-bottom:3px;color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .mb-col.cur .v{color:var(--primary);font-size:12px;font-weight:700}:root[data-theme=terracotta] .mb-col .bar{width:56%;max-width:26px;background:var(--primary-soft);border-radius:6px 6px 0 0;min-height:4px}:root[data-theme=terracotta] .mb-col .bar.zero{min-height:0}:root[data-theme=terracotta] .mb-col.cur .bar{background:var(--primary);box-shadow:0 2px 6px #b45b3d47}:root[data-theme=terracotta] .mb-col .l{font-size:11px;margin-top:6px;color:var(--ink-3);white-space:nowrap}:root[data-theme=terracotta] .rv-trend{margin-top:var(--sp-3);font-size:var(--fz-label);color:var(--ink-2)}:root[data-theme=terracotta] .rv-trend.note{color:var(--ink-4)}:root[data-theme=terracotta] .rband{padding:var(--sp-2) 0 0}:root[data-theme=terracotta] .rb-chart{position:relative}:root[data-theme=terracotta] .rb-rulerbox{position:relative;margin-left:var(--rb-bandx);height:34px}:root[data-theme=terracotta] .rb-rlab{position:absolute;top:0;transform:translate(-50%);font-size:10px;color:var(--ink-4)}:root[data-theme=terracotta] .rb-rlab.night{color:#8a7a6a}:root[data-theme=terracotta] .rb-ruler{position:absolute;left:0;right:0;top:15px;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--rb-ruler-night) 0% 46%,var(--rb-ruler-day) 54% 100%)}:root[data-theme=terracotta] .rb-rtick{position:absolute;top:24px;transform:translate(-50%);font-size:9px;color:var(--ink-4);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .rb-midnight{position:absolute;top:28px;bottom:3px;left:calc(var(--rb-bandx) + (100% - var(--rb-bandx)) * .25);border-left:1px dashed rgba(93,74,61,.22)}:root[data-theme=terracotta] .rb-row{display:flex;align-items:center;gap:var(--sp-2)}:root[data-theme=terracotta] .rb-lab{width:40px;flex-shrink:0;text-align:right;font-size:10px;color:var(--ink-4);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .rb-row.today{height:40px}:root[data-theme=terracotta] .rb-row.today .rb-lab{color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .rb-tband{position:relative;flex:1;height:38px;background:#fdfaf2;border:1px solid var(--line-soft);border-radius:10px}:root[data-theme=terracotta] .rb-nbar,:root[data-theme=terracotta] .rb-nnap{position:absolute;cursor:pointer}:root[data-theme=terracotta] .rb-nbar{top:11px;height:16px;border-radius:5px;background:var(--rb-sleep);display:flex;align-items:center;justify-content:space-between;padding:0 6px;color:#fff;font-size:9px;box-sizing:border-box;overflow:visible}:root[data-theme=terracotta] .rb-nnap{top:14px;height:10px;border-radius:3px;background:repeating-linear-gradient(135deg,var(--rb-sleep) 0 3px,var(--rb-sleep-deep) 3px 6px)}:root[data-theme=terracotta] .rb-nnap.open{background:var(--rb-sleep);opacity:.85}:root[data-theme=terracotta] .rb-naplab{position:absolute;top:25px;transform:translate(-2px);font-size:9px;color:var(--ink-4);white-space:nowrap}:root[data-theme=terracotta] .rb-hdiv{margin:9px 0 8px;border-top:1px solid var(--line-soft)}:root[data-theme=terracotta] .rb-row.hist{height:15px;margin-bottom:6px}:root[data-theme=terracotta] .rb-hband{position:relative;flex:1;height:15px}:root[data-theme=terracotta] .rb-hbar{position:absolute;top:5px;height:5px;border-radius:2.5px;background:var(--rb-ghost)}:root[data-theme=terracotta] .rb-hit{position:absolute;top:0;bottom:0;cursor:pointer}:root[data-theme=terracotta] .rb-foot{margin:9px 0 0 var(--rb-bandx);font-size:9px;color:var(--ink-4)}:root[data-theme=terracotta] .rb-pop{display:none}:root[data-theme=terracotta] [data-action=rb-pop][aria-expanded=true]{outline:2px solid var(--primary);outline-offset:1px;z-index:31}:root[data-theme=terracotta] [data-action=rb-pop][aria-expanded=true] .rb-pop{display:block;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);background:var(--ink);color:#fdf6ec;border-radius:8px;padding:7px 10px;font-size:11px;white-space:nowrap;z-index:30;box-shadow:var(--shadow-lg);pointer-events:none}:root[data-theme=terracotta] [data-action=rb-pop][aria-expanded=true] .rb-pop:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--ink)}:root[data-theme=terracotta] .rb-drill{display:block;margin-top:5px;padding:5px 0 0;width:100%;text-align:left;border:none;border-top:1px solid rgba(255,255,255,.18);background:none;color:#f0c4b2;font-family:inherit;font-size:11px;font-weight:600;cursor:pointer;pointer-events:auto}:root[data-theme=terracotta] .rv-back{display:inline-flex;align-items:center;gap:4px;font-size:var(--fz-label);color:var(--primary);background:none;border:none;cursor:pointer;font-family:inherit;padding:4px 0;margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .rv-back:active{color:var(--primary-deep)}:root[data-theme=terracotta] .day-label{font-size:var(--fz-label);color:var(--ink-3);margin:0 2px var(--sp-2)}:root[data-theme=terracotta] .dia-row{display:flex;gap:var(--sp-3)}:root[data-theme=terracotta] .dia-cell{flex:1;text-align:center;padding:var(--sp-3) 0;border-radius:var(--r-sm);background:var(--surface-2)}:root[data-theme=terracotta] .dia-cell .n{font-family:var(--font-display);font-size:26px;color:var(--ink);line-height:1.1}:root[data-theme=terracotta] .dia-cell .k{font-size:11px;color:var(--ink-3);margin-top:2px}:root[data-theme=terracotta] .dia-cond{margin-top:var(--sp-3);font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .dia-cond.ok{color:var(--ok)}:root[data-theme=terracotta] .dia-cond.warn{color:var(--warn);font-weight:700}:root[data-theme=terracotta] .poop-hist{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px dashed var(--line)}:root[data-theme=terracotta] .ph-hd{font-size:var(--fz-label);color:var(--ink-3);margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .poop-bars{display:flex;flex-direction:column;gap:6px}:root[data-theme=terracotta] .pb-row{display:flex;align-items:center;gap:var(--sp-2)}:root[data-theme=terracotta] .pb-when{flex:0 0 62px;display:flex;flex-direction:column;line-height:1.2}:root[data-theme=terracotta] .pb-when b{font-size:11px;color:var(--ink-2)}:root[data-theme=terracotta] .pb-track{flex:1;display:flex;align-items:center}:root[data-theme=terracotta] .pb-bar{height:22px;border-radius:var(--r-sm);padding:0 8px;font-size:11px;color:#fff;box-sizing:border-box;display:flex;align-items:center;white-space:nowrap;min-width:0}:root[data-theme=terracotta] .pb-bar.normal{background:var(--ink-4)}:root[data-theme=terracotta] .pb-bar.warn{background:var(--warn)}:root[data-theme=terracotta] .pb-bar.danger{background:var(--danger)}:root[data-theme=terracotta] .pb-first{font-size:11px;color:var(--ink-4);font-style:italic}:root[data-theme=terracotta] .poop-legend{display:flex;gap:var(--sp-3);margin-top:var(--sp-2);font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .poop-legend span{display:inline-flex;align-items:center}:root[data-theme=terracotta] .poop-legend span:before{content:"";width:10px;height:10px;border-radius:3px;margin-right:4px}:root[data-theme=terracotta] .poop-legend .normal:before{background:var(--ink-4)}:root[data-theme=terracotta] .poop-legend .warn:before{background:var(--warn)}:root[data-theme=terracotta] .poop-legend .danger:before{background:var(--danger)}:root[data-theme=terracotta] .food-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}:root[data-theme=terracotta] .food-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px 3px 7px;border-radius:var(--r-pill);font-size:15px;border:1.5px solid var(--line);background:var(--surface)}:root[data-theme=terracotta] .food-chip i{font-style:normal;font-size:11px;color:var(--ink-2)}:root[data-theme=terracotta] .food-chip.ok{border-color:var(--ok);background:var(--ok-soft)}:root[data-theme=terracotta] .food-chip.warn{border-color:var(--warn);background:var(--warn-soft)}:root[data-theme=terracotta] .food-chip.danger{border-color:var(--danger);background:var(--danger-soft)}:root[data-theme=terracotta] .food-tried{font-size:11px;color:var(--ink-3);margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .hd-ic{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:8px;background:var(--primary-soft);font-size:13px;line-height:1;margin-right:7px;vertical-align:-7px}:root[data-theme=terracotta] .sup-chips{display:flex;flex-wrap:wrap;gap:8px}:root[data-theme=terracotta] .sup-chip{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:6px 15px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s}:root[data-theme=terracotta] .sup-chip:active{transform:scale(.96)}:root[data-theme=terracotta] .sup-chip.done{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep);box-shadow:0 0 0 2px var(--primary-soft)}:root[data-theme=terracotta] .sup-chip.done:before{content:"✓";font-weight:700}:root[data-theme=terracotta] .sup-add{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border-radius:12px;border:1px dashed var(--line);background:none;color:var(--ink-3);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer}:root[data-theme=terracotta] .sup-wrap{display:inline-flex;align-items:center;gap:2px}:root[data-theme=terracotta] .sup-del{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;border:none;background:none;color:var(--ink-4);cursor:pointer;font-family:inherit}:root[data-theme=terracotta] .sup-del:before{content:"✕";font-size:12px}:root[data-theme=terracotta] .sup-del:active{color:var(--danger)}:root[data-theme=terracotta] .sup-prev{margin-top:var(--sp-3);padding-top:11px;border-top:1px dashed var(--line);font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .sup-prev:before{content:"🕐 "}:root[data-theme=terracotta] .toast{position:absolute;left:50%;bottom:96px;transform:translate(-50%) translateY(12px);background:var(--ink);color:#fff;font-size:var(--fz-label);padding:10px 16px;border-radius:var(--r-pill);opacity:0;transition:all .25s;pointer-events:none;z-index:200;white-space:nowrap;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-lg)}:root[data-theme=terracotta] .toast[data-show=true]{opacity:1;transform:translate(-50%) translateY(0)}:root[data-theme=terracotta] .toast .undo{background:#fff3;border:none;color:#fff;font-size:var(--fz-label);font-weight:700;padding:4px 11px;border-radius:var(--r-pill);cursor:pointer;font-family:inherit;pointer-events:auto}:root[data-theme=terracotta] .toast .undo:active{background:#ffffff52}:root[data-theme=terracotta] .confirm{position:absolute;inset:0;z-index:120;background:#2e2a245c;align-items:center;justify-content:center;padding:var(--sp-5)}:root[data-theme=terracotta] .confirm[hidden]{display:none}:root[data-theme=terracotta] .confirm:not([hidden]){display:flex;animation:cfFade .16s ease}@keyframes cfFade{0%{opacity:0}}:root[data-theme=terracotta] .confirm-box{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--sp-5) var(--sp-4) var(--sp-4);width:100%;max-width:320px;animation:cfPop .2s cubic-bezier(.2,.9,.3,1)}@keyframes cfPop{0%{transform:scale(.94);opacity:0}}:root[data-theme=terracotta] .confirm-msg{font-size:var(--fz-body);color:var(--ink);line-height:1.7;text-align:center}:root[data-theme=terracotta] .confirm-msg b{color:var(--primary-deep)}:root[data-theme=terracotta] .confirm-acts{display:flex;gap:var(--sp-2);margin-top:var(--sp-4)}:root[data-theme=terracotta] .cbtn{flex:1;padding:12px;border-radius:var(--r-md);font-size:var(--fz-body);font-weight:700;cursor:pointer;font-family:inherit;border:1px solid var(--line)}:root[data-theme=terracotta] .cbtn.ghost{background:var(--surface-2);color:var(--ink-2)}:root[data-theme=terracotta] .cbtn[data-variant=primary]{background:var(--primary);color:#fff;border-color:var(--primary)}:root[data-theme=terracotta] .cbtn[data-variant=danger]{background:var(--danger);color:#fff;border-color:var(--danger)}:root[data-theme=terracotta] .cbtn.primary{background:var(--primary);color:#fff;border-color:var(--primary)}:root[data-theme=terracotta] .cbtn:active{transform:scale(.97)}:root[data-theme=terracotta] .choice-title{font-size:var(--fz-h);font-weight:700;color:var(--ink);text-align:center;position:relative}:root[data-theme=terracotta] .choice-x{position:absolute;right:-4px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:none;background:var(--surface-2);color:var(--ink-2);font-size:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center}:root[data-theme=terracotta] .choice-x:active{transform:translateY(-50%) scale(.94)}:root[data-theme=terracotta] .choice-warn{margin-top:var(--sp-2);padding:8px 12px;border-radius:var(--r-sm);background:var(--warn-soft);color:var(--warn);font-size:var(--fz-label);line-height:1.5;text-align:center}:root[data-theme=terracotta] .choice-warn[hidden]{display:none}:root[data-theme=terracotta] .choice-warn:not([hidden]){display:block}:root[data-theme=terracotta] .choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin-top:var(--sp-4)}:root[data-theme=terracotta] .choice-grid[hidden]{display:none}:root[data-theme=terracotta] .choice-grid[data-catgrid=type]{grid-template-columns:repeat(2,1fr)}:root[data-theme=terracotta] .choice-grid[data-catgrid=type] .choice-opt{padding:var(--sp-4) var(--sp-2)}:root[data-theme=terracotta] .choice-opt{display:flex;flex-direction:column;align-items:center;gap:5px;padding:var(--sp-3) var(--sp-2);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;font-family:inherit;color:var(--ink);transition:transform .1s,background .15s,border-color .15s}:root[data-theme=terracotta] .choice-opt:active{transform:scale(.95);background:var(--primary-soft);border-color:var(--primary)}:root[data-theme=terracotta] .choice-opt .oi{font-size:24px;line-height:1}:root[data-theme=terracotta] .choice-opt .ot{font-size:var(--fz-label);font-weight:700}:root[data-theme=terracotta] .choice-opt{position:relative}:root[data-theme=terracotta] .choice-opt .lock{display:none;position:absolute;top:4px;right:6px;font-size:11px}:root[data-theme=terracotta] .choice-opt[data-locked=true]{opacity:.4;cursor:not-allowed}:root[data-theme=terracotta] .choice-opt[data-locked=true] .lock{display:block}:root[data-theme=terracotta] .watch-card{border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-3);border:1.5px solid var(--ok);background:var(--ok-soft)}:root[data-theme=terracotta] .watch-card.warn{border-color:var(--danger);background:var(--danger-soft)}:root[data-theme=terracotta] .wc-hd{display:flex;align-items:center;gap:var(--sp-2)}:root[data-theme=terracotta] .wc-ic{font-size:20px}:root[data-theme=terracotta] .wc-t{font-size:var(--fz-h);font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .wc-day{margin-left:auto;font-size:var(--fz-label);font-weight:700;color:var(--ok);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .watch-card.warn .wc-day{color:var(--danger)}:root[data-theme=terracotta] .wc-msg{font-size:var(--fz-label);color:var(--ink-2);margin-top:5px;line-height:1.6}:root[data-theme=terracotta] .wc-track{display:flex;gap:6px;margin-top:var(--sp-2)}:root[data-theme=terracotta] .wc-dot{width:22px;height:6px;border-radius:3px;background:var(--line)}:root[data-theme=terracotta] .wc-dot.ok{background:var(--ok)}:root[data-theme=terracotta] .wc-dot.warn{background:var(--danger)}:root[data-theme=terracotta] .edit-line{width:100%;margin-top:var(--sp-3);padding:7px 10px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);align-items:center;justify-content:space-between;gap:var(--sp-2);font-family:inherit;font-size:var(--fz-label);cursor:pointer;text-align:left}:root[data-theme=terracotta] .edit-line[hidden]{display:none}:root[data-theme=terracotta] .edit-line:not([hidden]){display:flex}:root[data-theme=terracotta] .edit-line:active{border-color:var(--primary);background:var(--primary-soft)}:root[data-theme=terracotta] .edit-line .el-t{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=terracotta] .edit-line .el-x{color:var(--primary);font-weight:700;flex-shrink:0}:root[data-theme=terracotta] .stepper{display:flex;align-items:center;justify-content:center;gap:var(--sp-4);margin-top:var(--sp-4)}:root[data-theme=terracotta] .step-btn{width:46px;height:46px;border-radius:50%;flex-shrink:0;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:24px;font-weight:400;line-height:1;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:center}:root[data-theme=terracotta] .step-btn:active{transform:scale(.92);background:var(--primary-soft);border-color:var(--primary)}:root[data-theme=terracotta] .step-val{min-width:120px;display:flex;align-items:baseline;justify-content:center;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .step-val small{font-size:var(--fz-body);color:var(--ink-3);margin-left:3px}:root[data-theme=terracotta] .step-input{width:92px;text-align:center;padding:2px 0;font-family:var(--font-display);font-size:40px;font-weight:700;color:var(--ink);border:none;border-bottom:2px dashed var(--line);background:transparent;outline:none;font-variant-numeric:tabular-nums;-moz-appearance:textfield}:root[data-theme=terracotta] .step-input:focus{border-bottom-color:var(--primary)}:root[data-theme=terracotta] .step-input::-webkit-outer-spin-button,:root[data-theme=terracotta] .step-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}:root[data-theme=terracotta] .name-input{width:100%;margin-top:var(--sp-3);padding:10px 14px;box-sizing:border-box;font-family:inherit;font-size:var(--fz-body);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);outline:none}:root[data-theme=terracotta] .name-input:focus{border-color:var(--primary);background:var(--surface)}:root[data-theme=terracotta] .name-input::placeholder{color:var(--ink-4)}:root[data-theme=terracotta] .preset-row{display:flex;gap:var(--sp-2);justify-content:center;margin-top:var(--sp-4);flex-wrap:wrap}:root[data-theme=terracotta] .preset{padding:7px 14px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-size:var(--fz-label);font-weight:600;cursor:pointer;font-family:inherit;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .preset[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep)}:root[data-theme=terracotta] .preset:active{transform:scale(.95)}:root[data-theme=terracotta] .step-hint{text-align:center;font-size:11px;color:var(--ink-3);margin-top:var(--sp-3)}:root[data-theme=terracotta] .react-label{font-size:var(--fz-label);color:var(--ink-3);margin:var(--sp-3) 0 6px;text-align:left}:root[data-theme=terracotta] .react-row{display:flex;gap:6px}:root[data-theme=terracotta] .react-opt{flex:1;padding:8px 0;border-radius:8px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink-3);font-family:inherit;font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] .react-opt[aria-pressed=true].ok{border-color:var(--ok);background:var(--ok-soft);color:var(--ok);font-weight:700}:root[data-theme=terracotta] .react-opt[aria-pressed=true].warn{border-color:var(--warn);background:var(--warn-soft);color:var(--warn);font-weight:700}:root[data-theme=terracotta] .react-opt[aria-pressed=true].danger{border-color:var(--danger);background:var(--danger-soft);color:var(--danger);font-weight:700}:root[data-theme=terracotta] .g-form{display:flex;flex-direction:column;gap:var(--sp-2);margin:var(--sp-2) 0}:root[data-theme=terracotta] .g-field{display:flex;align-items:center;gap:var(--sp-3)}:root[data-theme=terracotta] .g-field[hidden]{display:none}:root[data-theme=terracotta] .g-field>span{width:44px;font-size:var(--fz-body);color:var(--ink-2)}:root[data-theme=terracotta] .g-field input{flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fz-body);font-family:inherit;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .g-field input:focus{outline:none;border-color:var(--primary)}:root[data-theme=terracotta] .g-field>small{width:24px;font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .bill-hero{text-align:center;padding:var(--sp-3) 0 var(--sp-2)}:root[data-theme=terracotta] .bh-lbl{display:block;font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .bh-big{font-family:var(--font-display);font-size:40px;font-weight:700;color:var(--primary-deep);line-height:1.1;font-variant-numeric:tabular-nums;margin:2px 0}:root[data-theme=terracotta] .bh-hrs{font-family:var(--font-body, inherit);font-size:var(--fz-body);font-weight:600;color:var(--ink-3);margin-left:10px;letter-spacing:0}:root[data-theme=terracotta] .bill-cmp{font-size:var(--fz-label);color:var(--ink-3);margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .bill-cmp .delta-up{color:var(--primary);font-weight:700}:root[data-theme=terracotta] .bill-cmp .delta-down{color:var(--ok);font-weight:700}:root[data-theme=terracotta] .bill-cmp .delta-flat{color:var(--ink-4);font-weight:700}:root[data-theme=terracotta] .bill-minis{display:flex;gap:6px;margin-bottom:var(--sp-3)}:root[data-theme=terracotta] .bill-mini{flex:1;border:1px solid var(--line);border-radius:10px;padding:8px 4px;background:var(--surface);text-align:center}:root[data-theme=terracotta] .bm-l{font-size:11px;color:var(--ink-3);display:block}:root[data-theme=terracotta] .bm-v{font-family:var(--font-display);font-size:19px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.3px;display:block}:root[data-theme=terracotta] .bill-mini.inc .bm-v{color:var(--ok)}:root[data-theme=terracotta] .bill-mini.exp .bm-v{color:var(--primary)}:root[data-theme=terracotta] .bill-mini.bal .bm-v{color:var(--ink)}:root[data-theme=terracotta] .bill-grid-hd{display:flex;align-items:center;justify-content:space-between;margin:var(--sp-3) 2px var(--sp-2)}:root[data-theme=terracotta] .bill-grid-hd .t{font-size:var(--fz-body);font-weight:600;color:var(--ink)}:root[data-theme=terracotta] .bill-grid-hd .h{font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .bill-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:var(--sp-2) 0}:root[data-theme=terracotta] .bw-cell{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0 5px;border-radius:8px;cursor:pointer}:root[data-theme=terracotta] .bw-cell.on{background:var(--primary-soft)}:root[data-theme=terracotta] .bw-cell.future{opacity:.45;cursor:default}:root[data-theme=terracotta] .bw-wd{font-size:10px;color:var(--ink-3)}:root[data-theme=terracotta] .bw-day{font-size:12px;color:var(--ink-2);font-weight:600}:root[data-theme=terracotta] .bw-cell.on .bw-day{color:var(--primary-deep)}:root[data-theme=terracotta] .bw-barwrap{height:46px;width:12px;display:flex;align-items:flex-end;background:var(--surface-2);border-radius:6px;overflow:hidden}:root[data-theme=terracotta] .bw-bar{width:100%;background:var(--primary);border-radius:6px;transition:height .2s}:root[data-theme=terracotta] .bw-v{font-size:9px;color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .bill-grid-ft{text-align:center;font-size:var(--fz-label);color:var(--ink-3);margin-top:var(--sp-2)}:root[data-theme=terracotta] .bill-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:var(--sp-2) 0}:root[data-theme=terracotta] .bc-wd{font-size:10px;color:var(--ink-4);text-align:center;padding-bottom:2px}:root[data-theme=terracotta] .bc-cell{min-height:46px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;padding:3px 0 2px;border-radius:7px;cursor:pointer;border:1px solid transparent}:root[data-theme=terracotta] .bc-cell.today{border-color:var(--primary)}:root[data-theme=terracotta] .bc-cell.other{opacity:.3;cursor:default}:root[data-theme=terracotta] .bc-cell.future{opacity:.4;cursor:default}:root[data-theme=terracotta] .bc-num{font-size:10px;color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .bc-cell.today .bc-num{color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .bc-barwrap{width:54%;height:11px;display:flex;align-items:flex-end;background:var(--surface-2);border-radius:4px;overflow:hidden}:root[data-theme=terracotta] .bc-cell.other .bc-barwrap,:root[data-theme=terracotta] .bc-cell.future .bc-barwrap{background:transparent}:root[data-theme=terracotta] .bc-bar{width:100%;background:var(--primary);border-radius:4px}:root[data-theme=terracotta] .bc-v{font-size:9px;color:var(--primary);font-variant-numeric:tabular-nums;line-height:1}:root[data-theme=terracotta] .bc-cell.other .bc-v,:root[data-theme=terracotta] .bc-cell.future .bc-v{display:none}:root[data-theme=terracotta] .ec-hd{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2)}:root[data-theme=terracotta] .ec-title{font-family:var(--font-display);font-size:var(--fz-body);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .ec-nav{min-width:34px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--primary);font-family:inherit;font-size:var(--fz-body);cursor:pointer}:root[data-theme=terracotta] .ec-nav:disabled{opacity:.3;cursor:default}:root[data-theme=terracotta] .eat-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}:root[data-theme=terracotta] .ec-wd{font-size:10px;color:var(--ink-4);text-align:center;padding-bottom:2px}:root[data-theme=terracotta] .ec-cell{min-height:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:7px;border:1px solid transparent;cursor:default}:root[data-theme=terracotta] .ec-cell.has{cursor:pointer}:root[data-theme=terracotta] .ec-cell.has:active{background:var(--primary-soft)}:root[data-theme=terracotta] .ec-cell.today{border-color:var(--primary)}:root[data-theme=terracotta] .ec-cell.other{opacity:.3}:root[data-theme=terracotta] .ec-cell.future{opacity:.4}:root[data-theme=terracotta] .ec-num{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .ec-cell.today .ec-num{color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .ec-dot{width:5px;height:5px;border-radius:50%;background:transparent}:root[data-theme=terracotta] .ec-cell.has .ec-dot{background:var(--primary)}:root[data-theme=terracotta] .bill-year{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:var(--sp-2) 0}:root[data-theme=terracotta] .by-cell{border:1px solid var(--line);border-radius:10px;padding:6px 3px 5px;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}:root[data-theme=terracotta] .by-cell.this{border-color:var(--primary);background:var(--primary-soft)}:root[data-theme=terracotta] .by-cell.future{opacity:.4;cursor:default}:root[data-theme=terracotta] .by-name{font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .by-cell.this .by-name{color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .by-barwrap{height:24px;width:12px;display:flex;align-items:flex-end;background:var(--surface-2);border-radius:5px;overflow:hidden}:root[data-theme=terracotta] .by-bar{width:100%;background:var(--primary);border-radius:5px}:root[data-theme=terracotta] .by-v{font-size:10px;color:var(--ink-2);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .by-cnt{font-size:9px;color:var(--ink-4)}:root[data-theme=terracotta] .cat-lead{font-size:var(--fz-label);color:var(--ink-3);margin:0 2px var(--sp-2)}:root[data-theme=terracotta] .cat-lead b{color:var(--ink);font-weight:700}:root[data-theme=terracotta] .cat-group{display:flex;flex-wrap:wrap;gap:6px;margin:0 2px var(--sp-3)}:root[data-theme=terracotta] .cat-group .cg{font-size:var(--fz-label);color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:2px 10px;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .cat-group .cg b{color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .cat-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-4)}:root[data-theme=terracotta] .cat-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0}:root[data-theme=terracotta] .cat-row+.cat-row{border-top:1px dashed var(--line-soft)}:root[data-theme=terracotta] .cat-ic{font-size:20px;flex-shrink:0}:root[data-theme=terracotta] .cat-main{flex:1;min-width:0}:root[data-theme=terracotta] .cat-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2);margin-bottom:5px}:root[data-theme=terracotta] .cat-lbl{font-size:var(--fz-body);color:var(--ink)}:root[data-theme=terracotta] .cat-v{font-size:var(--fz-label);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}:root[data-theme=terracotta] .cat-bar{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}:root[data-theme=terracotta] .cat-fill{display:block;height:100%;border-radius:3px;background:var(--primary)}:root[data-theme=terracotta] .cat-row:first-child .cat-fill{background:var(--primary-deep)}:root[data-theme=terracotta] button.bill-mini{font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;transition:border-color .15s,background .15s}:root[data-theme=terracotta] button.bill-mini[aria-pressed=false]{background:var(--surface-2);opacity:.72}:root[data-theme=terracotta] button.bill-mini[aria-pressed=true]{background:var(--surface)}:root[data-theme=terracotta] button.bill-mini.exp[aria-pressed=true]{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}:root[data-theme=terracotta] button.bill-mini.inc[aria-pressed=true]{border-color:var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}:root[data-theme=terracotta] .bill-stat[data-side=income] .bh-big{color:var(--ok)}:root[data-theme=terracotta] .bill-stat[data-side=income] .bw-bar,:root[data-theme=terracotta] .bill-stat[data-side=income] .bc-bar,:root[data-theme=terracotta] .bill-stat[data-side=income] .by-bar,:root[data-theme=terracotta] .bill-stat[data-side=income] .cat-fill{background:var(--ok)}:root[data-theme=terracotta] .bill-stat[data-side=income] .cat-row:first-child .cat-fill{background:#3c6349}:root[data-theme=terracotta] .bill-stat[data-side=income] .bw-cell.on,:root[data-theme=terracotta] .bill-stat[data-side=income] .bc-cell.today,:root[data-theme=terracotta] .bill-stat[data-side=income] .by-cell.this{background:var(--ok-soft)}:root[data-theme=terracotta] .bill-stat[data-side=income] .bw-cell.on .bw-day,:root[data-theme=terracotta] .bill-stat[data-side=income] .bc-cell.today .bc-num{color:var(--ok)}:root[data-theme=terracotta] .bill-stat[data-side=income] .bill-cmp .delta-up{color:var(--ok)}:root[data-theme=terracotta] .bill-stat[data-side=income] .bill-cmp .delta-down{color:var(--primary)}:root[data-theme=terracotta] .rv-hd.sub{margin:var(--sp-3) 2px var(--sp-2)}:root[data-theme=terracotta] .rv-hd.sub .t{font-size:var(--fz-body)}:root[data-theme=terracotta] .wish-catrow{cursor:pointer;padding:var(--sp-2) var(--sp-4);transition:background .15s}:root[data-theme=terracotta] .wish-catrow.sel{background:var(--primary-soft)}:root[data-theme=terracotta] .wish-catrow:active{background:var(--primary-soft)}:root[data-theme=terracotta] .wish-all{color:var(--primary);cursor:pointer;font-weight:400}:root[data-theme=terracotta] .wish-divide{display:flex;align-items:center;gap:var(--sp-2);padding:7px var(--sp-4) 5px;border-top:1px solid var(--line)}:root[data-theme=terracotta] .wish-divide .wd-t{font-size:var(--fz-label);color:var(--ink-3);font-weight:700}:root[data-theme=terracotta] .wish-divide .wd-sort{margin-left:auto;display:flex;gap:2px}:root[data-theme=terracotta] .wd-s{padding:2px 8px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-family:inherit;font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .wd-s.on{background:var(--surface);color:var(--primary-deep);font-weight:700;box-shadow:var(--shadow)}:root[data-theme=terracotta] .wish-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);border-top:1px dashed var(--line-soft)}:root[data-theme=terracotta] .wish-body{flex:1;min-width:0}:root[data-theme=terracotta] .wish-name{font-size:var(--fz-body);color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=terracotta] .wish-meta{font-size:11px;color:var(--ink-3);margin-top:2px;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .wish-tag{font-size:10px;color:var(--primary-deep);background:var(--primary-soft);border-radius:var(--r-pill);padding:1px 6px;margin-left:5px;font-weight:700;vertical-align:middle}:root[data-theme=terracotta] .wish-tag.virt{color:var(--ink-2);background:var(--surface-2)}:root[data-theme=terracotta] .wish-acts{display:flex;align-items:center;gap:4px;flex-shrink:0}:root[data-theme=terracotta] .wish-buy{padding:4px 12px;border-radius:var(--r-pill);border:1px solid var(--primary);background:var(--primary);color:#fff;font-family:inherit;font-size:var(--fz-label);font-weight:700;cursor:pointer}:root[data-theme=terracotta] .wish-buy:active{background:var(--primary-deep)}:root[data-theme=terracotta] .wish-setwage{color:var(--primary);cursor:pointer}@keyframes wishFlash{0%{background:var(--primary-soft)}to{background:transparent}}:root[data-theme=terracotta] .wish-item.flash{animation:wishFlash 1.6s ease}:root[data-theme=terracotta] #rest-panel{margin-top:var(--sp-4)}:root[data-theme=terracotta] .book-wrap{display:flex;flex-direction:column}:root[data-theme=terracotta] .book-card{position:relative;min-height:62vh;width:100%;display:flex;flex-direction:column;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:28px var(--sp-5) var(--sp-5);text-align:center;background-image:radial-gradient(rgba(120,90,60,.045) 1px,transparent 1px);background-size:5px 5px}:root[data-theme=terracotta] .book-card:before{content:"";position:absolute;inset:10px;border:1px solid var(--line-soft);border-radius:14px;pointer-events:none}:root[data-theme=terracotta] .book-card .kicker{position:relative;font-size:11px;color:var(--primary-deep);letter-spacing:5px}:root[data-theme=terracotta] .book-card .kicker:before,:root[data-theme=terracotta] .book-card .kicker:after{content:"";position:absolute;top:50%;width:24px;height:1px;background:var(--line)}:root[data-theme=terracotta] .book-card .kicker:before{right:100%;margin-right:10px}:root[data-theme=terracotta] .book-card .kicker:after{left:100%;margin-left:10px}:root[data-theme=terracotta] .book-card .book-stage{flex:1;display:flex;align-items:center;justify-content:center}:root[data-theme=terracotta] .book-card .bt{font-family:var(--font-display);font-size:26px;color:var(--ink);letter-spacing:6px;font-weight:700}:root[data-theme=terracotta] .book-card .bd{font-size:var(--fz-label);color:var(--ink-3);letter-spacing:2px;margin-top:8px}:root[data-theme=terracotta] .flip-btn{margin-top:var(--sp-5);background:var(--primary);color:#fff;border:0;padding:13px 40px;border-radius:var(--r-pill);font-family:inherit;font-size:var(--fz-body);font-weight:700;letter-spacing:3px;cursor:pointer;box-shadow:var(--shadow)}:root[data-theme=terracotta] .flip-btn:active{background:var(--primary-deep)}:root[data-theme=terracotta] .book-card .hint{margin-top:var(--sp-4);font-size:11px;color:var(--ink-4);letter-spacing:1px}:root[data-theme=terracotta] .paper{position:relative;min-height:62vh;width:100%;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:20px var(--sp-5) var(--sp-5);background-image:radial-gradient(rgba(120,90,60,.045) 1px,transparent 1px);background-size:5px 5px;animation:pageTurn .5s cubic-bezier(.2,.7,.3,1);transform-origin:left center}:root[data-theme=terracotta] .paper:before{content:"";position:absolute;inset:10px;border:1px solid var(--line-soft);border-radius:14px;pointer-events:none}@keyframes pageTurn{0%{transform:perspective(720px) rotateY(-82deg);opacity:.15}to{transform:perspective(720px) rotateY(0);opacity:1}}:root[data-theme=terracotta] .paper .fold{position:absolute;top:-1px;right:-1px;width:0;height:0;border-top:20px solid var(--surface-2);border-left:20px solid transparent;border-top-right-radius:var(--r-lg);filter:drop-shadow(-1px 1px 1px rgba(70,52,38,.08))}:root[data-theme=terracotta] .paper-top{display:flex;align-items:center;justify-content:space-between}:root[data-theme=terracotta] .paper-top .pdate{font-size:10px;color:var(--ink-4);letter-spacing:1px}:root[data-theme=terracotta] .paper-top .pright{display:flex;align-items:center;gap:8px}:root[data-theme=terracotta] .paper-top .pno{font-size:10px;color:var(--ink-4);letter-spacing:2px}:root[data-theme=terracotta] .paper-top .ptheme{font-size:10px;border:1px solid var(--line);border-radius:var(--r-pill);padding:3px 11px;letter-spacing:2px}:root[data-theme=terracotta] .paper .emblem{align-self:center;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-soft);background:var(--surface-2);margin-top:var(--sp-3)}:root[data-theme=terracotta] .paper .emblem svg{width:27px;height:27px;display:block}:root[data-theme=terracotta] .paper .lead{position:relative;align-self:center;font-size:11px;color:var(--primary-deep);letter-spacing:4px;margin-top:var(--sp-3)}:root[data-theme=terracotta] .paper .lead:before,:root[data-theme=terracotta] .paper .lead:after{content:"";position:absolute;top:50%;width:20px;height:1px;background:var(--line)}:root[data-theme=terracotta] .paper .lead:before{right:100%;margin-right:9px}:root[data-theme=terracotta] .paper .lead:after{left:100%;margin-left:9px}:root[data-theme=terracotta] .paper-hero{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:var(--sp-4) 0}:root[data-theme=terracotta] .paper-hero .quo{position:absolute;top:-16px;left:-4px;font-family:var(--font-display);font-size:108px;line-height:1;color:var(--primary);opacity:.09;pointer-events:none}:root[data-theme=terracotta] .paper-hero .wm{position:absolute;top:50%;left:50%;width:176px;height:176px;transform:translate(-50%,-50%);opacity:.06;pointer-events:none}:root[data-theme=terracotta] .paper-hero .wm svg{width:100%;height:100%}:root[data-theme=terracotta] .paper-hero .rule{position:absolute;inset:10px 14px;background-image:repeating-linear-gradient(transparent 0 33px,var(--line-soft) 33px 34px);opacity:.45;pointer-events:none}:root[data-theme=terracotta] .paper .line{position:relative;font-family:var(--font-display);font-size:29px;line-height:2.05;color:var(--ink);font-weight:700;letter-spacing:1px;text-align:center;max-width:13em}:root[data-theme=terracotta] .paper .line .pl{display:block}:root[data-theme=terracotta] .paper .line.poem{writing-mode:vertical-rl;font-size:26px;line-height:1.5;letter-spacing:2px;max-width:none;text-align:center}:root[data-theme=terracotta] .paper .line.poem .pl{margin:0 .34em;white-space:nowrap}:root[data-theme=terracotta] .paper .seal{position:absolute;right:2px;bottom:2px;width:46px;height:46px;border:2px solid var(--primary);border-radius:8px;color:var(--primary);font-family:var(--font-display);font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;opacity:.5;transform:rotate(-7deg);background:var(--primary-soft);box-shadow:inset 0 0 0 3px var(--surface)}:root[data-theme=terracotta] .paper-foot{text-align:center}:root[data-theme=terracotta] .paper .divider{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--primary);opacity:.55;margin-bottom:7px}:root[data-theme=terracotta] .paper .divider:before,:root[data-theme=terracotta] .paper .divider:after{content:"";width:36px;height:1px;background:var(--line)}:root[data-theme=terracotta] .paper .divider .d{font-size:9px}:root[data-theme=terracotta] .paper .src{font-size:var(--fz-label);color:var(--primary-deep);letter-spacing:1px}:root[data-theme=terracotta] .paper .note{font-size:11px;color:var(--ink-4);margin-top:6px;letter-spacing:1px}:root[data-theme=terracotta] .merit-nums{width:max-content;max-width:100%;margin:var(--sp-2) auto 0;text-align:center;padding:var(--sp-3) var(--sp-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);position:relative}:root[data-theme=terracotta] .merit-nums:before{content:"";position:absolute;inset:6px;border:1px solid var(--line-soft);border-radius:9px;pointer-events:none}:root[data-theme=terracotta] .merit-label{font-size:var(--fz-label);color:var(--ink-3);letter-spacing:4px;margin-bottom:var(--sp-1)}:root[data-theme=terracotta] .merit-today{font-family:var(--font-display);font-size:58px;font-weight:700;color:var(--primary);line-height:1.05;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .merit-rank{display:inline-block;margin-top:var(--sp-2);font-size:11px;color:var(--primary-deep);background:var(--primary-soft);border:1px solid var(--line-soft);border-radius:var(--r-pill);padding:3px 14px;letter-spacing:3px}:root[data-theme=terracotta] .merit-rank[data-run]{animation:rankBump .5s ease}@keyframes rankBump{0%{transform:scale(1)}30%{transform:scale(1.18);background:var(--primary);border-color:var(--primary);color:#fff}to{transform:scale(1)}}:root[data-theme=terracotta] .merit-best{font-size:11px;color:var(--ink-3);margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--line-soft)}:root[data-theme=terracotta] .merit-best b{color:var(--primary-deep);font-family:var(--font-display);display:inline-block}:root[data-theme=terracotta] .merit-best[data-run]{animation:recFlash .5s ease}@keyframes recFlash{0%,to{color:var(--primary-deep);transform:scale(1)}40%{color:var(--primary);transform:scale(1.32)}}:root[data-theme=terracotta] .fish-wrap{position:relative;display:flex;justify-content:center;padding:var(--sp-4) 0 0;-webkit-user-select:none;user-select:none;width:100%;border:0;background:radial-gradient(circle at 50% 42%,rgba(182,90,62,.12),transparent 60%);font:inherit;cursor:pointer}:root[data-theme=terracotta] .fish{cursor:pointer;width:210px;height:auto}:root[data-theme=terracotta] .fish-body{transform-box:fill-box;transform-origin:center}:root[data-theme=terracotta] .fish[data-run] .fish-body{animation:fishTap .14s ease}:root[data-theme=terracotta] .fish[data-run] .mallet{animation:malletTap .14s ease}@keyframes fishTap{0%{transform:scale(1)}45%{transform:scale(.92)}to{transform:scale(1)}}:root[data-theme=terracotta] .fish .mallet{transform-box:fill-box;transform-origin:right bottom}@keyframes malletTap{0%{transform:rotate(0)}45%{transform:rotate(9deg)}to{transform:rotate(0)}}:root[data-theme=terracotta] .ring{position:absolute;left:50%;top:42%;width:60px;height:60px;border:2px solid var(--primary);border-radius:50%;transform:translate(-50%,-50%) scale(1);opacity:0;pointer-events:none}:root[data-theme=terracotta] .ring[data-run]{animation:ring .5s ease-out}@keyframes ring{0%{opacity:.5}to{transform:translate(-50%,-50%) scale(2.3);opacity:0}}:root[data-theme=terracotta] .float-pool{position:absolute;inset:0;pointer-events:none}:root[data-theme=terracotta] .float{position:absolute;left:50%;top:22%;font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--warn);pointer-events:none;opacity:0;--dx: 0px;--rot: 0deg;--rise: -62px}:root[data-theme=terracotta] .float[data-run]{animation:floatUp 1s ease-out forwards}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,10px) rotate(0)}22%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)),var(--rise)) rotate(var(--rot))}}:root[data-theme=terracotta] .float-pool .float:nth-child(1){--dx: -16px;--rot: -6deg;--rise: -60px}:root[data-theme=terracotta] .float-pool .float:nth-child(2){--dx: 14px;--rot: 5deg;--rise: -72px}:root[data-theme=terracotta] .float-pool .float:nth-child(3){--dx: -8px;--rot: 7deg;--rise: -66px}:root[data-theme=terracotta] .float-pool .float:nth-child(4){--dx: 18px;--rot: -4deg;--rise: -78px}:root[data-theme=terracotta] .float-pool .float:nth-child(5){--dx: -20px;--rot: 3deg;--rise: -64px}:root[data-theme=terracotta] .float-pool .float:nth-child(6){--dx: 6px;--rot: -8deg;--rise: -74px}:root[data-theme=terracotta] .mtip{text-align:center;font-size:11px;color:var(--ink-4);letter-spacing:1px;margin-top:var(--sp-3)}:root[data-theme=terracotta] .me-item[data-action=open-shift] .go{font-size:var(--fz-label);color:var(--primary-deep)}:root[data-theme=terracotta] .sh-file{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}:root[data-theme=terracotta] .sh-empty{padding:var(--sp-6) var(--sp-4);text-align:center}:root[data-theme=terracotta] .sh-empty-t{font-size:var(--fz-body);color:var(--ink-2);line-height:1.8;margin-bottom:var(--sp-4)}:root[data-theme=terracotta] .sh-btn{padding:11px var(--sp-4);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font-family:inherit;font-size:var(--fz-body);font-weight:700;cursor:pointer}:root[data-theme=terracotta] .sh-btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}:root[data-theme=terracotta] .sh-btn:active{transform:scale(.97)}:root[data-theme=terracotta] .sh-head{text-align:center;padding:var(--sp-2) 0 var(--sp-3)}:root[data-theme=terracotta] .sh-month{font-family:var(--font-display);font-size:var(--fz-title);font-weight:700;color:var(--ink);letter-spacing:1px}:root[data-theme=terracotta] .sh-sub{font-size:var(--fz-label);color:var(--ink-3);margin-top:2px}:root[data-theme=terracotta] .sh-readouts{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-1);margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-ro{text-align:center;padding:var(--sp-2) 2px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line-soft)}:root[data-theme=terracotta] .sh-ro.from-sheet{background:var(--primary-soft);border-color:transparent}:root[data-theme=terracotta] .sh-ro-v{display:block;font-family:var(--font-display);font-size:var(--fz-title);font-weight:700;color:var(--primary-deep);line-height:1.2;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-ro-l{display:block;font-size:11px;color:var(--ink-3);margin-top:2px}:root[data-theme=terracotta] .sh-cal{margin-top:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-2) var(--sp-3);box-shadow:var(--shadow)}:root[data-theme=terracotta] .sh-wds{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:var(--sp-1)}:root[data-theme=terracotta] .sh-wd{text-align:center;font-size:12px;color:var(--ink-3)}:root[data-theme=terracotta] .sh-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}:root[data-theme=terracotta] .sh-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;padding:4px 1px;border-radius:var(--r-sm);border:1px solid transparent;background:var(--surface-2);color:var(--ink-2);font-family:inherit;cursor:pointer;line-height:1.2;overflow:hidden}:root[data-theme=terracotta] .sh-cell.blank{background:none;border-color:transparent;cursor:default}:root[data-theme=terracotta] .sh-cell .sh-d{font-size:11px;color:var(--ink-4);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-cell .sh-c{font-size:var(--fz-label);font-weight:700;letter-spacing:0;line-height:1.15;width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root[data-theme=terracotta] .sh-cell.none{background:none;border-color:var(--line-soft);border-style:dashed}:root[data-theme=terracotta] .sh-cell.none .sh-c{color:var(--ink-4);font-weight:400}:root[data-theme=terracotta] .sh-cell.rest{background:var(--ok-soft)}:root[data-theme=terracotta] .sh-cell.rest .sh-c{color:var(--ok)}:root[data-theme=terracotta] .sh-cell.work{background:var(--primary-soft)}:root[data-theme=terracotta] .sh-cell.work .sh-c{color:var(--primary-deep)}:root[data-theme=terracotta] .sh-cell.night{background:var(--work-deep)}:root[data-theme=terracotta] .sh-cell.night .sh-c{color:var(--primary-deep)}:root[data-theme=terracotta] .sh-cell[aria-current=date]{border-color:var(--primary)}:root[data-theme=terracotta] .sh-cell[aria-current=date] .sh-d{color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .sh-note{font-size:10px;color:var(--ink-3);margin-top:1px}:root[data-theme=terracotta] .sh-cell:hover{border-color:var(--line)}:root[data-theme=terracotta] .sh-cell.ro{cursor:default}:root[data-theme=terracotta] .sh-cell.ro:hover{border-color:transparent}:root[data-theme=terracotta] .sh-cal-hint{margin-top:var(--sp-2);text-align:center;font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .sh-acts{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-acts .sh-btn{flex:1}:root[data-theme=terracotta] .sh-warn{margin-top:var(--sp-2);padding:8px 12px;border-radius:var(--r-sm);background:var(--warn-soft);color:var(--warn);font-size:var(--fz-label);line-height:1.5;text-align:center}:root[data-theme=terracotta] .sh-warn[hidden]{display:none}:root[data-theme=terracotta] .sh-warn:not([hidden]){display:block}:root[data-theme=terracotta] .sh-field{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-field span{font-size:var(--fz-label);color:var(--ink-3);flex-shrink:0}:root[data-theme=terracotta] .sh-field input{flex:1;min-width:0;padding:9px 10px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-family:inherit;font-size:var(--fz-body);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-filter{margin-top:var(--sp-2)}:root[data-theme=terracotta] .sh-filter input{width:100%;padding:9px 10px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-family:inherit;font-size:var(--fz-body)}:root[data-theme=terracotta] .sh-people{margin-top:var(--sp-2);max-height:46vh;overflow-y:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}:root[data-theme=terracotta] .sh-people-empty{padding:var(--sp-4);text-align:center;font-size:var(--fz-label);color:var(--ink-3)}:root[data-theme=terracotta] .sh-person{display:flex;align-items:center;gap:var(--sp-2);padding:10px var(--sp-3);cursor:pointer;border-bottom:1px dashed var(--line-soft)}:root[data-theme=terracotta] .sh-person:last-child{border-bottom:none}:root[data-theme=terracotta] .sh-person.sel{background:var(--primary-soft)}:root[data-theme=terracotta] .sh-p-name{font-size:var(--fz-body);color:var(--ink);font-weight:700}:root[data-theme=terracotta] .sh-p-no{font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-p-type{margin-left:auto;font-size:11px;color:var(--ink-3)}:root[data-theme=terracotta] .sh-months{margin-top:var(--sp-3);max-height:46vh;overflow-y:auto;-webkit-overflow-scrolling:touch}:root[data-theme=terracotta] .sh-month-row{display:flex;align-items:center;gap:var(--sp-2);padding:8px 0;border-bottom:1px dashed var(--line-soft)}:root[data-theme=terracotta] .sh-month-row:last-child{border-bottom:none}:root[data-theme=terracotta] .sh-m-go{flex:1;text-align:left;padding:9px var(--sp-3);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-family:inherit;font-size:var(--fz-body);cursor:pointer}:root[data-theme=terracotta] .sh-month-row.sel .sh-m-go{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .sh-m-del{padding:9px var(--sp-3);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--danger);font-family:inherit;font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] .sh-detail{margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-dt-head{display:flex;align-items:baseline;gap:var(--sp-2);flex-wrap:wrap}:root[data-theme=terracotta] .sh-dt-code{font-size:var(--fz-h);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-dt-name{font-size:var(--fz-body);color:var(--ink-2)}:root[data-theme=terracotta] .sh-dt-meta{margin-top:4px;color:var(--ink-3);font-size:var(--fz-label);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-dt-note{display:inline-block;margin-top:var(--sp-2);padding:1px 8px;border-radius:var(--r-pill);font-size:11px;background:var(--warn-soft);color:var(--warn)}:root[data-theme=terracotta] .sh-unknown{margin-top:var(--sp-3);padding:8px 12px;border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink-3);font-size:var(--fz-label);line-height:1.6;text-align:center}:root[data-theme=terracotta] .sh-unknown[hidden]{display:none}:root[data-theme=terracotta] .sh-unknown:not([hidden]){display:block}:root[data-theme=terracotta] .sh-scope{display:flex;gap:var(--sp-1);margin-top:var(--sp-2)}:root[data-theme=terracotta] .sh-scope-b{flex:1;min-height:34px;padding:7px 4px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] .sh-scope-b[aria-pressed=true]{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .sh-scope-hint{margin-top:6px;font-size:12px;color:var(--ink-3)}:root[data-theme=terracotta] .sh-person-wrap{display:flex;align-items:stretch;gap:var(--sp-1)}:root[data-theme=terracotta] .sh-person-wrap .sh-person{flex:1}:root[data-theme=terracotta] .sh-ck{flex:0 0 auto;width:36px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--primary-deep);font-size:var(--fz-body);cursor:pointer}:root[data-theme=terracotta] .sh-ck.on{background:var(--primary-soft);border-color:var(--primary)}:root[data-theme=terracotta] .sh-ck.on:before{content:"✓"}:root[data-theme=terracotta] .sh-ck[aria-disabled=true]{opacity:.6;cursor:default}:root[data-theme=terracotta] .sh-day-research{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-day-research .sh-btn{flex:1}:root[data-theme=terracotta] .sh-find-wrap{margin-top:var(--sp-2);max-height:50vh;overflow-y:auto;-webkit-overflow-scrolling:touch}:root[data-theme=terracotta] .sh-find{display:flex;flex-direction:column;gap:6px}:root[data-theme=terracotta] .sh-find-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2);width:100%;text-align:left;padding:10px var(--sp-3);border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-family:inherit;cursor:pointer}:root[data-theme=terracotta] .sh-find-row:active{transform:scale(.99)}:root[data-theme=terracotta] .sh-find-who{font-size:var(--fz-body);font-weight:700}:root[data-theme=terracotta] .sh-find-sub{font-size:var(--fz-label);color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-person-view{margin-top:var(--sp-2)}:root[data-theme=terracotta] .sh-person-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-1)}:root[data-theme=terracotta] .sh-person-sub{font-size:var(--fz-label);color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-person-mon{font-size:var(--fz-label);color:var(--ink-2);font-weight:700}:root[data-theme=terracotta] .sh-person-cmp{width:100%;margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-person-cal .sh-cell{min-height:46px}:root[data-theme=terracotta] .sh-roster{max-height:56vh;overflow-y:auto;-webkit-overflow-scrolling:touch}:root[data-theme=terracotta] .sh-roster-empty{padding:var(--sp-5) var(--sp-4);text-align:center;color:var(--ink-3)}:root[data-theme=terracotta] .sh-seg{display:flex;gap:var(--sp-1);padding:3px;margin-top:var(--sp-2);background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--r-md)}:root[data-theme=terracotta] .sh-seg-b{flex:1;min-height:32px;padding:6px 4px;border:none;border-radius:var(--r-sm);background:none;color:var(--ink-3);font-family:inherit;font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] .sh-seg-b[aria-pressed=true]{background:var(--surface);color:var(--primary-deep);font-weight:700;box-shadow:var(--shadow)}:root[data-theme=terracotta] .sh-grps{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-2)}:root[data-theme=terracotta] .sh-grp{border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--surface);overflow:hidden}:root[data-theme=terracotta] .sh-grp.mine{border-color:var(--primary)}:root[data-theme=terracotta] .sh-grp-h{display:flex;align-items:baseline;gap:var(--sp-2);padding:8px var(--sp-3);border-bottom:1px solid var(--line-soft);background:var(--surface-2)}:root[data-theme=terracotta] .sh-grp.mine .sh-grp-h{background:var(--primary-soft)}:root[data-theme=terracotta] .sh-grp-post{font-size:var(--fz-body);font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .sh-grp-mine{margin-left:auto;padding:1px 8px;border-radius:var(--r-pill);background:var(--primary);color:#fff;font-size:11px}:root[data-theme=terracotta] .sh-grp-sub{padding:7px var(--sp-3) 2px;font-size:var(--fz-label);color:var(--ink-3);font-weight:700;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-grp-ppl{display:flex;flex-wrap:wrap;gap:6px;padding:var(--sp-1) var(--sp-3) var(--sp-3)}:root[data-theme=terracotta] .sh-name{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:5px 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-family:inherit;font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] button.sh-name:active{transform:scale(.96)}:root[data-theme=terracotta] .sh-name.me{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-deep);font-weight:700;cursor:default}:root[data-theme=terracotta] .sh-name.me b{font-weight:700;font-size:10px;opacity:.75}:root[data-theme=terracotta] .sh-name-c{font-style:normal;font-size:10px;font-weight:700;letter-spacing:.3px;padding:0 5px;border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-name-c.night{background:var(--primary-soft);color:var(--primary-deep)}:root[data-theme=terracotta] .sh-name-c.work{background:var(--surface-2);color:var(--ink-2)}:root[data-theme=terracotta] .sh-rsect-t{display:flex;align-items:baseline;gap:var(--sp-2);margin:var(--sp-3) 0 var(--sp-1);font-size:var(--fz-label);color:var(--ink-3);font-weight:700}:root[data-theme=terracotta] .sh-compare{max-height:64vh;overflow-y:auto;-webkit-overflow-scrolling:touch}:root[data-theme=terracotta] .sh-rel-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2)}:root[data-theme=terracotta] .sh-rel-who{font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .sh-rel-mon{color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-rel-count{margin-top:2px;color:var(--ink-2);font-size:var(--fz-label)}:root[data-theme=terracotta] .sh-rel-cal{margin-top:var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-2);box-shadow:var(--shadow)}:root[data-theme=terracotta] .sh-rel-cell{display:flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--surface);margin:0;padding:0;width:100%;font:inherit;color:inherit;-webkit-appearance:none;appearance:none}:root[data-theme=terracotta] button.sh-rel-cell{cursor:pointer}:root[data-theme=terracotta] button.sh-rel-cell:hover{border-color:var(--primary-deep)}:root[data-theme=terracotta] button.sh-rel-cell:focus-visible{outline:2px solid var(--primary-deep);outline-offset:1px}:root[data-theme=terracotta] .sh-rel-cell.blank{background:none;border-color:transparent}:root[data-theme=terracotta] .sh-rel-cell.take{background:var(--ok-soft);border-color:var(--ok)}:root[data-theme=terracotta] .sh-rel-cell.give{background:var(--primary-soft);border-color:var(--primary)}:root[data-theme=terracotta] .sh-rel-cell.today{box-shadow:0 0 0 2px var(--primary-deep)}:root[data-theme=terracotta] .sh-rel-cell.past{filter:grayscale(1);opacity:.45}:root[data-theme=terracotta] .sh-rel-d{font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-rel-cell.take .sh-rel-d,:root[data-theme=terracotta] .sh-rel-cell.give .sh-rel-d{color:var(--ink);font-weight:700}:root[data-theme=terracotta] .sh-rel-legend{display:flex;gap:var(--sp-4);margin-top:var(--sp-2);font-size:var(--fz-label);color:var(--ink-2)}:root[data-theme=terracotta] .sh-rel-key{display:inline-flex;align-items:center;gap:6px}:root[data-theme=terracotta] .sh-rel-key:before{content:"";width:10px;height:10px;border-radius:3px}:root[data-theme=terracotta] .sh-rel-key.take:before{background:var(--ok)}:root[data-theme=terracotta] .sh-rel-key.give:before{background:var(--primary)}:root[data-theme=terracotta] .sh-cmpd{display:flex;flex-direction:column;gap:var(--sp-2)}:root[data-theme=terracotta] .sh-cmpd-row{display:flex;align-items:baseline;gap:var(--sp-2);flex-wrap:wrap}:root[data-theme=terracotta] .sh-cmpd-who{font-weight:700;color:var(--ink)}:root[data-theme=terracotta] .sh-cmpd-dot{color:var(--ink-3)}:root[data-theme=terracotta] .sh-cmpd-shift{display:inline-flex;align-items:baseline;gap:var(--sp-2);flex-wrap:wrap}:root[data-theme=terracotta] .sh-cmpd-code{color:var(--primary-deep);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-cmpd-label{color:var(--ink-2)}:root[data-theme=terracotta] .sh-swap{max-height:60vh;overflow-y:auto;-webkit-overflow-scrolling:touch}:root[data-theme=terracotta] .sh-sw-toggle{min-height:32px;padding:6px 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-2);font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] .sh-sw-toggle[aria-pressed=true]{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-deep);font-weight:700}:root[data-theme=terracotta] .confirm-box.wide{max-width:560px}:root[data-theme=terracotta] .sh-opt{display:grid;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--surface);font-size:var(--fz-label)}:root[data-theme=terracotta] .sh-opp-d{text-align:right;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-opp-w{color:var(--ink-3)}:root[data-theme=terracotta] .sh-opp-h{color:var(--ink-3);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-opp-c{color:var(--ink);font-weight:700}:root[data-theme=terracotta] .sh-opp-p{color:var(--ink-3)}:root[data-theme=terracotta] .sh-opts{display:flex;flex-direction:column;gap:6px}:root[data-theme=terracotta] .sh-opt{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:8px;row-gap:3px}:root[data-theme=terracotta] .sh-opt .sh-opp-d{text-align:left}:root[data-theme=terracotta] .sh-opt .sh-opp-p{flex:1}:root[data-theme=terracotta] .sh-opt .sh-sw-badges{flex-basis:100%;margin-top:1px}:root[data-theme=terracotta] .sh-cell.past{filter:grayscale(1);opacity:.5}:root[data-theme=terracotta] .sh-sw-head{padding-bottom:var(--sp-2)}:root[data-theme=terracotta] .sh-sw-day{color:var(--ink);font-size:var(--fz-h);font-weight:700;letter-spacing:.01em}:root[data-theme=terracotta] .sh-sw-meta{margin-top:3px;color:var(--ink-3);font-size:var(--fz-label)}:root[data-theme=terracotta] .sh-sw-bar{display:flex;justify-content:flex-start;padding-bottom:var(--sp-2);border-bottom:1px solid var(--line-soft)}:root[data-theme=terracotta] .sh-sw-hint{margin-left:var(--sp-2);color:var(--ink-4);font-size:11px;font-weight:400}:root[data-theme=terracotta] .sh-sw{display:grid;grid-template-columns:1.7em auto 1fr;align-items:center;gap:2px var(--sp-2);width:100%;text-align:left;margin-top:6px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--surface);cursor:pointer;font-family:inherit}:root[data-theme=terracotta] .sh-sw-rank{grid-row:1 / 3;display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:var(--primary-soft);color:var(--primary-deep);font-size:var(--fz-label);font-weight:700;font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-sw-who{color:var(--ink);font-size:var(--fz-body);font-weight:700}:root[data-theme=terracotta] .sh-sw-badges{display:flex;flex-wrap:wrap;gap:5px;justify-self:end}:root[data-theme=terracotta] .sh-sw-terms{grid-column:2 / -1;color:var(--ink-2);font-size:var(--fz-label);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-sw-extra{grid-column:2 / -1;color:var(--ink-3);font-size:var(--fz-label);font-variant-numeric:tabular-nums}:root[data-theme=terracotta] .sh-sw.cover{grid-template-columns:auto 1fr;opacity:.85}:root[data-theme=terracotta] .sh-sw-fold{margin-top:var(--sp-3)}:root[data-theme=terracotta] .sh-sw-fold>summary{padding:7px 0;color:var(--ink-3);font-size:var(--fz-label);cursor:pointer}:root[data-theme=terracotta] .sh-sw-dt{display:flex;align-items:baseline;gap:var(--sp-2);color:var(--ink);font-size:var(--fz-h);font-weight:700}:root[data-theme=terracotta] .sh-sw-sub{font-size:var(--fz-label);font-weight:400;color:var(--ink-3)}:root[data-theme=terracotta] .sh-sw-lead{margin:4px 0 var(--sp-2);color:var(--ink-2);font-size:var(--fz-label)}:root[data-theme=terracotta] .sh-badge{padding:1px 7px;border-radius:var(--r-pill);font-size:11px;background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line-soft)}:root[data-theme=terracotta] .sh-badge.good{background:var(--ok-soft);color:var(--ok);border-color:transparent}:root[data-theme=terracotta] .sh-badge.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}
