:root{
  --paper:#f8f5ee;--sheet:#fdfaf5;--surface:#f3efe6;--soft:#eee8dc;--line:#dfd7c7;
  --ink:#1e1c19;--ink-2:#504b43;--muted:#898276;--red:#aa2a23;--gold:#b48a47;
  --primary:#176b67;--secondary:#a86436;--tertiary:#536c9c;--primary-contrast:#fff;--secondary-contrast:#fff;--tertiary-contrast:#fff;--radius:22px;
  --shadow:0 16px 36px -12px rgba(35,28,20,.12),inset 0 1px rgba(255,255,255,.9);
  font-family:"Noto Serif SC","Songti SC","STSong","Source Han Serif SC",serif;color:var(--ink);background:var(--paper);
}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;min-width:320px;min-height:100dvh;overscroll-behavior:none;background:radial-gradient(circle at 0 0,#fff 0,transparent 44%),radial-gradient(circle at 100% 10%,#eee6d9aa 0,transparent 45%),var(--paper);color:var(--ink)}:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 55%,white);outline-offset:2px}
button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:#b48a4738}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:#cfc4b1;border-radius:99px}
.sans{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.mono{font-family:"JetBrains Mono","SFMono-Regular",Consolas,monospace}.serif{font-family:inherit}
.auth-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(360px,42%) 1fr;background:var(--paper)}
.auth-art{position:relative;overflow:hidden;padding:clamp(36px,6vw,88px);display:flex;flex-direction:column;justify-content:space-between;background:#173c3a;color:#f7f1e5}
.auth-art:before{content:"慎";position:absolute;right:-.1em;bottom:-.28em;font-size:min(52vw,640px);font-weight:900;color:#fff;opacity:.035;line-height:1}
.auth-art:after{content:"";position:absolute;inset:18px;border:1px solid #d2b16b55;border-radius:32px;pointer-events:none}
.brand-lockup{position:relative;z-index:1}.brand-row{display:flex;align-items:center;gap:14px}.seal{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#c23830,#8d201a);border:1px solid #f9d9d355;box-shadow:inset 0 2px 2px #fff5,inset 0 -2px 3px #0005,0 8px 24px #06000035;font-weight:800;font-size:1.35rem}.brand-cn{font-size:1.45rem;letter-spacing:.22em;font-weight:800}.brand-en{font:600 .64rem/1.2 ui-serif,Georgia,serif;letter-spacing:.28em;color:#d8cbb3;margin-top:5px}.auth-quote{position:relative;z-index:1;max-width:520px;font-size:clamp(1.5rem,3vw,2.7rem);line-height:1.4;letter-spacing:.08em}.auth-quote small{display:block;font:500 .72rem/1.7 ui-sans-serif,system-ui;color:#d8cbb3;letter-spacing:.15em;margin-top:24px}.auth-panel{display:grid;place-items:center;padding:32px}.auth-card{width:min(440px,100%);background:#fdfaf6;border:1px solid var(--line);border-top-color:#fff;border-radius:28px;padding:34px;box-shadow:var(--shadow)}
.auth-card h1{margin:0 0 8px;font-size:1.7rem}.auth-card>p{color:var(--muted);margin:0 0 26px;font-size:.9rem}.field{display:grid;gap:8px;margin:0 0 16px}.field label{font-size:.82rem;font-weight:700;color:var(--ink-2)}.field input,.field textarea,.field select,.control{width:100%;border:1px solid #d9cfbe;background:#fffdf9;border-radius:14px;padding:11px 13px;outline:none;box-shadow:inset 0 2px 4px #241a0f0a;transition:.18s}.field textarea{min-height:112px;resize:vertical;line-height:1.7}.field input:focus,.field textarea:focus,.field select:focus,.control:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}.help{font-size:.75rem;color:var(--muted);line-height:1.5}.error-text{font-size:.78rem;color:var(--red);min-height:1.3em}
.btn{border:1px solid transparent;border-radius:999px;min-height:40px;padding:9px 17px;font-weight:700;font-size:.82rem;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .16s,filter .16s,background .16s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:var(--primary-contrast);box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 22%,transparent)}.btn-red{background:linear-gradient(135deg,#bd342c,#8f211b);color:white;box-shadow:inset 0 1px #fff5,0 8px 18px #94231b35}.btn-ghost{background:#fff9;border-color:var(--line);color:var(--ink-2)}.btn-soft{background:color-mix(in srgb,var(--primary) 9%,#fff);border-color:color-mix(in srgb,var(--primary) 23%,transparent);color:var(--primary)}.btn-danger{background:#fff5f2;border-color:#e9b8b3;color:#9c241f}.btn-block{width:100%}.btn[disabled]{opacity:.48;cursor:not-allowed;filter:grayscale(.3)}.link-button{border:0;background:transparent;color:var(--primary);padding:4px;font-weight:700}
.app-shell{min-height:100dvh;padding-left:264px}.sidebar{position:fixed;z-index:40;inset:0 auto 0 0;width:264px;display:flex;flex-direction:column;background:#f1ece2f5;border-right:1px solid var(--line);box-shadow:4px 0 24px #231c1408;overflow:auto}.side-brand{padding:22px 18px 18px;border-bottom:1px solid var(--line)}.side-brand .seal{width:42px;height:42px;border-radius:14px}.side-quote{font-size:.74rem;color:var(--ink-2);border-left:2px solid var(--gold);padding-left:9px;margin:13px 0 0;line-height:1.7}.nav-group{padding:16px 12px 4px}.nav-caption{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.68rem;letter-spacing:.14em;padding:0 9px 8px}.nav-caption:after{content:"";height:1px;flex:1;background:var(--line)}.nav-item{width:100%;border:1px solid transparent;background:transparent;border-radius:16px;padding:9px 10px;margin:2px 0;display:flex;align-items:center;gap:10px;text-align:left;color:var(--ink-2);font-size:.83rem}.nav-item:hover{background:#e9e2d5}.nav-item.active{background:linear-gradient(90deg,#e8e0d0,#f6f1e8);border-color:#ddd2bf;box-shadow:inset 3px 0 var(--gold),0 3px 8px #3125100a;color:var(--ink);font-weight:800}.nav-num{font:600 .67rem/1 ui-monospace,monospace;color:var(--muted);min-width:22px}.nav-item.active .nav-num{width:23px;height:23px;display:grid;place-items:center;background:white;border-radius:50%;color:var(--gold)}.nav-meta{font-size:.63rem;color:var(--muted);margin-left:auto}.nav-badge{font:700 .62rem/1 ui-monospace,monospace;background:var(--red);color:white;border-radius:99px;padding:4px 7px;margin-left:auto}.side-spacer{flex:1}.side-tools{padding:9px 12px}.side-user{margin:8px 10px 12px;padding:12px;border-radius:17px;background:#eae3d5;border:1px solid #d7cbb7}.user-row{display:flex;align-items:center;gap:9px}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--sheet);border:2px solid color-mix(in srgb,var(--secondary) 48%,#fff);color:var(--secondary);font-weight:900}.user-copy{min-width:0}.user-copy strong{display:block;font-size:.78rem}.user-copy small{display:block;color:var(--muted);font:500 .62rem ui-monospace,monospace;margin-top:3px}.icon-btn{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:#fff8;display:grid;place-items:center;color:var(--ink-2)}
.topbar{position:fixed;z-index:30;left:264px;right:0;top:0;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 26px;background:#f8f5eef2;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.crumb{display:flex;align-items:center;gap:11px;min-width:0}.crumb strong{font-size:.95rem}.crumb span{font-size:.73rem;color:var(--muted);white-space:nowrap}.privacy-pill{display:flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#eae4d5;border:1px solid var(--line);font:500 .67rem ui-monospace,monospace;color:var(--ink-2)}.privacy-pill i{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 7px color-mix(in srgb,var(--primary) 55%,transparent)}.mobile-menu{display:none}
.workspace{padding-top:60px;display:grid;grid-template-columns:minmax(0,1fr) 316px;min-height:100dvh}.main{width:100%;max-width:970px;margin:0 auto;padding:28px}.right-rail{border-left:1px solid var(--line);background:#f1ece2d9;padding:20px;display:flex;flex-direction:column;gap:18px;min-width:0}.card{background:var(--sheet);border:1px solid #ddd3c2;border-top-color:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:22px}.intro-card{position:relative;overflow:hidden;display:flex;align-items:flex-start;gap:14px}.intro-card:after{content:"慎";position:absolute;right:-8px;bottom:-38px;font-size:130px;line-height:1;font-weight:900;color:var(--ink);opacity:.045}.intro-seal{width:37px;height:37px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#c43b32,#8a1c17);color:white;font-weight:800;box-shadow:inset 0 1px #fff5,0 5px 14px #7b201b3b;flex:0 0 auto}.intro-card small{display:block;font-size:.68rem;letter-spacing:.13em;color:var(--gold);font-weight:800;margin-bottom:6px}.intro-card p{position:relative;z-index:1;margin:0;line-height:1.8;font-size:.92rem;font-weight:650}.stack{display:flex;flex-direction:column;gap:20px}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat{position:relative;overflow:hidden;border-radius:20px;padding:18px;border:1px solid #fff6;min-height:120px;text-align:left;box-shadow:inset 0 1px #fff4,0 10px 24px #251a121a}.stat:nth-child(1){background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#0b1e1d));color:var(--primary-contrast)}.stat:nth-child(2){background:linear-gradient(145deg,var(--secondary),color-mix(in srgb,var(--secondary) 72%,#301a0f));color:var(--secondary-contrast)}.stat:nth-child(3){background:linear-gradient(145deg,var(--tertiary),color-mix(in srgb,var(--tertiary) 72%,#172033));color:var(--tertiary-contrast)}.stat:after{content:"";position:absolute;width:110px;height:110px;border:1px solid #fff2;border-radius:50%;right:-28px;bottom:-45px}.stat-label{font-size:.72rem;opacity:.78}.stat-value{font:700 2.15rem/1.1 ui-serif,Georgia,serif;margin:12px 0 3px}.stat-note{font-size:.67rem;opacity:.72}.stat.selected{outline:3px solid #fff;outline-offset:-6px}.stat:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.stats-grid .stat{min-height:190px;padding:19px 20px;border-radius:18px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .18s,filter .18s,box-shadow .18s}.stats-grid .stat:hover{transform:translateY(-2px);filter:brightness(1.05)}.stats-grid .stat:after{display:none}.stats-grid .stat-week{background:linear-gradient(145deg,#133230,#0e2423 52%,#081716);border-color:#2f5a56;border-top-color:#5bb8af66;color:#e7efef;box-shadow:0 12px 28px -6px #0a1e1c73,inset 0 1px 1px #fff3}.stats-grid .stat-action{background:linear-gradient(145deg,#381b17,#2a120f 52%,#1a0a08);border-color:#612d26;border-top-color:#e86d5c66;color:#fbebe8;box-shadow:0 12px 28px -6px #2d0f0c73,inset 0 1px 1px #fff3}.stats-grid .stat-history{background:linear-gradient(145deg,#1c2c3f,#141f2e 52%,#0c141f);border-color:#375276;border-top-color:#6d95c966;color:#e8effb;box-shadow:0 12px 28px -6px #0f192673,inset 0 1px 1px #fff3}.stats-grid .stat.selected{outline:2px solid #fff9;outline-offset:-6px}.stat-top,.stat-main,.stat-foot,.stat-scale{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px}.stat-top>span{display:flex;align-items:center;gap:8px;font-size:.73rem;font-weight:700;letter-spacing:.16em}.stat-top>span>i{width:8px;height:8px;border-radius:50%;background:#52b6af;box-shadow:0 0 8px #52b6af}.stat-action .stat-top>span>i{background:#e55749;box-shadow:0 0 8px #e55749}.stat-history .stat-top>span>i{background:#6997d3;box-shadow:0 0 8px #6997d3}.stat-icon{display:grid;place-items:center;width:29px;height:29px;border:1px solid #ffffff25;border-radius:11px;background:#ffffff0c;font-size:.72rem}.stat-main{justify-content:flex-start;margin:16px 0 9px}.stat-main strong{font:700 2.55rem/1 Georgia,serif;color:#fff;text-shadow:0 1px 8px #0006}.stat-main em{font-size:.72rem;font-style:normal;opacity:.78}.stat-progress{height:8px;padding:2px;margin:0 0 7px;background:#071513;border-radius:999px;box-shadow:inset 0 1px 3px #0008}.stat-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2fa29a,#48c5bc,#88eae2);box-shadow:0 0 8px #48c5bc88}.stat-scale{font:500 .59rem ui-monospace,monospace;color:#7fa6a2}.stat-scale>span{display:flex;gap:3px}.stat-scale i{width:10px;height:4px;border-radius:2px;background:#294643}.stat-scale i.filled{background:#75d8d0}.stat-scale b{color:#e7f8f6}.stat-quote{position:relative;z-index:1;min-height:35px;margin:0 0 8px;color:#e1cbc5;font-size:.72rem;line-height:1.55;font-style:italic;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stat-history .stat-quote{color:#c5d5eb;font-style:normal}.stat-alarm{position:relative;z-index:1;align-self:flex-start;border:1px solid #481e18;border-radius:999px;background:#250e0c;padding:5px 9px;color:#d9a399;font:500 .6rem ui-monospace,monospace}.stat-foot{margin-top:auto;padding-top:10px;border-top:1px solid #ffffff18;font:500 .62rem ui-monospace,monospace;opacity:.78}.stat-foot b{font-family:inherit;font-weight:600;color:#c8eeea}.stat-action .stat-foot b{color:#ffb5a8}.stat-history .stat-foot b{color:#b9d6fd}
.section-card{padding:25px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}.section-title{display:flex;align-items:center;gap:14px}.art-num{font:italic 600 2.9rem/1 ui-serif,Georgia,serif;color:var(--secondary);letter-spacing:-.07em}.section-title h2{font-size:1.12rem;margin:0 0 5px;letter-spacing:.05em}.section-title p{margin:0;color:var(--muted);font-size:.73rem}.section-action{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.status-chip{display:inline-flex;align-items:center;border:1px solid var(--line);background:#f5f0e6;border-radius:999px;padding:5px 9px;font-size:.65rem;color:var(--ink-2)}.status-chip.draft{color:#965e22;background:#fbf2e3;border-color:#e8cfaa}.status-chip.done{color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,#fff);border-color:color-mix(in srgb,var(--primary) 25%,#fff)}
.subsection{background:#f7f2e8;border:1px solid #e2d8c6;border-top-color:#fff;border-radius:17px;padding:17px;margin-top:14px}.subsection h3{font-size:.84rem;margin:0 0 12px;display:flex;align-items:center;gap:8px}.question{margin:0 0 20px}.question:last-child{margin-bottom:0}.question-label{display:flex;align-items:center;gap:7px;font-size:.84rem;font-weight:800;margin-bottom:8px}.required{color:var(--red);font-size:.65rem}.item-list{display:flex;flex-direction:column;gap:9px}.item-row{display:flex;gap:8px;align-items:flex-start}.item-row textarea{min-height:82px}.remove-btn{border:0;background:#f5e8e5;color:var(--red);border-radius:50%;width:30px;height:30px;flex:0 0 auto;margin-top:5px}.add-item{margin-top:8px;border:1px dashed #c8bda9;background:#fff8;color:var(--ink-2);border-radius:12px;padding:8px 12px;font-size:.75rem}.counter{text-align:right;color:var(--muted);font:500 .63rem ui-monospace,monospace;margin-top:4px}.input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric{border:1px solid var(--line);background:white;border-radius:15px;padding:13px}.metric strong{display:block;font-size:.77rem;margin-bottom:4px}.metric small{display:block;color:var(--muted);line-height:1.45;min-height:34px}.metric select,.metric textarea{margin-top:9px}.risk{border-left:3px solid var(--red)}.form-footer{position:sticky;bottom:14px;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;margin-top:18px;background:#f7f2e9ed;border:1px solid var(--line);border-radius:18px;backdrop-filter:blur(10px);box-shadow:0 12px 28px #2e24151b}.save-state{font-size:.7rem;color:var(--muted)}.button-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.folio-card{position:relative;overflow:hidden;padding:27px;border-radius:25px}.folio-head{--tone:#176b67;position:relative;min-height:75px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:0 0 20px;margin:0 0 24px;border-bottom:1px solid var(--line)}.folio-head.tone-two{--tone:#9e2a2b}.folio-head.tone-three{--tone:#9a5328}.folio-head.tone-four{--tone:#3b506c}.folio-word{position:absolute;right:8px;top:-34px;color:color-mix(in srgb,var(--tone) 22%,transparent);font:italic 500 6.5rem/1 "URW Chancery L","Brush Script MT",cursive;pointer-events:none}.folio-title{position:relative;z-index:1;display:flex;align-items:center;gap:16px}.folio-number{color:var(--tone);font:500 3.5rem/1 Georgia,serif;letter-spacing:-.06em}.folio-title h2{margin:0 0 6px;font-size:1.15rem;letter-spacing:.07em}.folio-title h2 span{color:var(--gold);font-weight:400}.folio-title p{display:flex;align-items:center;gap:7px;margin:0;color:var(--ink-2);font-size:.7rem;letter-spacing:.06em}.folio-title p i,.folio-badge i{width:5px;height:5px;border-radius:50%;background:var(--tone);opacity:.7}.folio-badge{position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--tone) 28%,#fff);border-radius:999px;background:#faf5ecee;padding:5px 10px;color:var(--tone);font-size:.66rem;font-weight:700;letter-spacing:.08em}.journal-count{position:relative;z-index:2;margin-left:auto;border:1px solid var(--line);border-radius:999px;background:#faf5ecee;padding:5px 9px;color:#3b506c;font:600 .62rem ui-monospace,monospace}.gauge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gauge-card{--gauge:#2fa29a;border:1px solid #dfcbb0;border-top-color:#fff;border-radius:22px;background:linear-gradient(145deg,#fffdf8,#f5eddf);padding:20px;box-shadow:0 8px 18px #30200e0c,inset 0 1px #fff}.gauge-card.energy{--gauge:#a86436}.gauge-title{display:flex;align-items:center;gap:9px;padding-bottom:12px;border-bottom:1px solid var(--line)}.gauge-icon{display:grid;place-items:center;width:29px;height:29px;border:1px solid color-mix(in srgb,var(--gauge) 25%,white);border-radius:11px;background:color-mix(in srgb,var(--gauge) 10%,white);color:var(--gauge);font-size:.7rem;font-weight:800}.gauge-title>span:nth-child(2){display:grid;gap:2px}.gauge-title b{font-size:.73rem}.gauge-title small{color:var(--muted);font:500 .56rem ui-monospace,monospace;letter-spacing:.08em}.gauge-title em{margin-left:auto;border:1px solid color-mix(in srgb,var(--gauge) 25%,white);border-radius:999px;background:color-mix(in srgb,var(--gauge) 8%,white);padding:4px 8px;color:var(--gauge);font:.65rem ui-monospace,monospace;font-style:normal}.gauge-reading{display:flex;align-items:end;gap:7px;margin:18px 0}.gauge-reading label{display:block}.gauge-reading input{width:90px;border:0;background:transparent;padding:0;color:var(--ink);font:700 2.7rem/1 Georgia,serif;outline:none}.gauge-reading input::placeholder{color:#b7afa3}.gauge-reading small{color:var(--ink-2);font-size:.68rem}.gauge-reading>b{margin-left:auto;border-radius:999px;background:#f3e3dc;padding:5px 8px;color:#974239;font-size:.62rem}.gauge-reading>b.good{background:#dfeee9;color:#176b67}.gauge{position:relative;height:12px;margin:4px 0 8px;padding:3px;background:#ded5c4;border-radius:999px;box-shadow:inset 0 2px 4px #20170d35}.gauge>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--gauge) 75%,#38281a),var(--gauge),color-mix(in srgb,var(--gauge) 52%,white));box-shadow:0 0 7px color-mix(in srgb,var(--gauge) 45%,transparent)}.gauge>i{position:absolute;top:-4px;width:2px;height:20px;background:var(--red)}.gauge>b{position:absolute;top:-2px;width:12px;height:12px;margin-left:-6px;border:2px solid white;border-radius:50%;background:var(--gauge);box-shadow:0 0 7px var(--gauge)}.gauge-scale{display:flex;justify-content:space-between;color:var(--muted);font:500 .57rem ui-monospace,monospace}.metric-heading{display:flex;align-items:center;justify-content:space-between;margin:22px 0 10px;font-size:.73rem;font-weight:800;color:var(--ink-2)}.metric-heading>span{display:flex;align-items:center;gap:8px}.metric-heading i{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 6px #b48a47}.metric-heading button{border:0;background:transparent;color:var(--gold);font-size:.7rem}.metric-example{padding:14px 16px;margin-bottom:11px;border:1px solid var(--line);border-radius:16px;background:#f3ece0;color:var(--ink-2);font-size:.7rem;line-height:1.6}.metric-example ul{margin:8px 0 0;padding-left:18px}.metric-ledger{display:flex;flex-direction:column;gap:10px}.metric-row{--metric:#176b67;position:relative;display:grid;grid-template-columns:4px minmax(0,1fr) 112px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#fffdf9,#f5eee3);padding:13px 13px 13px 0}.metric-row.metric-1{--metric:#a86436}.metric-row.metric-2{--metric:#536c9c}.metric-row>i{align-self:stretch;border-radius:0 4px 4px 0;background:var(--metric)}.metric-copy{display:grid;gap:4px}.metric-copy b{font-size:.73rem}.metric-copy small{color:var(--muted);font-size:.64rem}.metric-copy textarea,.metric-row select,.risk-note input,.action-lock input{width:100%;border:1px solid #d9cfbe;border-radius:11px;background:#fffdf9;padding:9px 10px;outline:none;font-size:.72rem;box-shadow:inset 0 2px 4px #241a0f0a}.metric-copy textarea{min-height:52px;resize:vertical}.metric-row select{color:var(--metric);font-weight:700}.risk-note{display:flex;gap:10px;align-items:flex-start;margin-top:16px;border:1px solid #dfcbb0;border-radius:17px;background:#f8efe3;padding:14px}.risk-note>span{display:grid;place-items:center;width:22px;height:22px;flex:0 0 auto;border-radius:50%;background:#a8643622;color:#a86436;font-weight:900}.risk-note>div{display:grid;gap:9px;width:100%;font-size:.73rem}.reflection-question{border:1px solid var(--line);border-top-color:#fff;border-radius:18px;background:linear-gradient(145deg,#fffdf9,#f4ede2);padding:19px;margin-top:14px;box-shadow:0 7px 16px #2c20100a}.reflection-label{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.reflection-label>span{color:#9e2a2b;font-size:.72rem;font-weight:800}.reflection-label>b{font-size:.76rem}.reflection-label>em{color:var(--red);font:700 .65rem ui-monospace,monospace;font-style:normal}.reflection-label>small{margin-left:auto;color:var(--muted);font:.6rem ui-monospace,monospace}.reflection-question>p{margin:8px 0 12px;color:var(--muted);font-size:.67rem}.question-embedded{margin:0}.reflection-question .control{background:#fffefb;line-height:1.75}.reflection-question .item-row{position:relative}.reflection-question .item-row:not(:first-child):before{content:"#" counter(list-item,decimal-leading-zero);display:grid;place-items:center;width:29px;height:29px;flex:0 0 auto;border:1px solid #b48a4788;border-radius:50%;color:var(--gold);font:700 .6rem ui-monospace,monospace}.action-lock{margin-top:13px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#fffdf9,#f4ede2);padding:18px}.focus-lock{border-color:#d9c4a6;background:linear-gradient(90deg,#fbf6ec,#f5ece0)}.action-label{display:flex;align-items:center;justify-content:space-between;gap:10px}.action-label b,.verify-lock b{color:#176b67;font-size:.75rem}.action-label b em,.verify-lock b em{color:var(--red);font:700 .64rem ui-monospace,monospace;font-style:normal}.action-label span{border-radius:999px;background:#b48a4720;padding:4px 8px;color:var(--gold);font-size:.6rem;font-weight:800}.action-lock>p,.verify-lock p{margin:6px 0 10px;color:var(--muted);font-size:.66rem}.focus-lock input{font-weight:800;font-size:.8rem;padding:11px}.if-then{display:grid;grid-template-columns:auto 25px minmax(0,1fr);align-items:center;gap:8px}.if-then>span{border:1px solid var(--line);border-radius:999px;background:white;padding:9px 12px;font-size:.67rem}.if-then>i{text-align:center;color:var(--gold);font-style:normal}.if-then input{border-radius:999px}.verify-lock{display:flex;align-items:center;justify-content:space-between;gap:12px}.verify-lock>div{margin-right:auto}.verify-lock>div p{margin-bottom:0}.verify-lock>input{width:auto}.verify-lock>span{border-radius:999px;background:#f5e3df;padding:5px 8px;color:var(--red);font-size:.62rem;font-weight:700}.journal-paper{border:1px solid #ddd3bf;border-radius:18px;background:#faf6ee;padding:20px;box-shadow:inset 0 2px 8px #2a1d0c0c}.journal-meta,.journal-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.66rem}.journal-meta{padding-bottom:11px;border-bottom:1px dashed #ddd3bf}.journal-meta b{display:inline-block;margin-right:7px;border-radius:999px;background:linear-gradient(145deg,#c23830,#8d201a);padding:3px 8px;color:#fff}.journal-paper textarea{width:100%;min-height:180px;border:0;outline:0;resize:vertical;background:repeating-linear-gradient(transparent 0,transparent 27px,#ddd3bf 28px);padding:10px 4px;color:var(--ink);font:500 .82rem/28px inherit;letter-spacing:.03em}.journal-foot{padding-top:11px;border-top:1px solid #ddd3bf}.journal-foot b{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:linear-gradient(145deg,#c23830,#8d201a);color:#fff;font-size:.6rem}
.reflection-question [data-question="cause"] .item-list{counter-reset:reason}.reflection-question [data-question="cause"] .item-row{counter-increment:reason}.reflection-question [data-question="cause"] .item-row:before{content:"#0" counter(reason);display:grid;place-items:center;width:29px;height:29px;flex:0 0 auto;border:1px solid #b48a4788;border-radius:50%;color:var(--gold);font:700 .6rem ui-monospace,monospace}.reflection-question [data-question="cause"] .item-row:not(:first-child):before{content:"#0" counter(reason)}
.journal-paper textarea{font-family:inherit;font-size:.82rem;font-weight:500;line-height:28px}
.rail-card{padding:17px}.rail-card h3{font-size:.78rem;margin:0 0 12px}.stage-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.stage-title b{font-size:.9rem}.rail-card p{font-size:.74rem;color:var(--ink-2);line-height:1.65;margin:7px 0 12px}.progress{height:8px;padding:2px;background:#e3dac7;border-radius:99px;box-shadow:inset 0 1px 3px #0002}.progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--secondary),color-mix(in srgb,var(--secondary) 55%,#e7c67b))}.rail-link{border:0;background:transparent;color:var(--primary);padding:8px 0 0;font-size:.72rem;font-weight:800}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-grid .dow{font-size:.62rem;color:var(--muted);padding:4px}.cal-day{aspect-ratio:1;border:1px solid transparent;background:transparent;border-radius:10px;font:500 .67rem ui-monospace,monospace}.cal-day:hover{background:white}.cal-day.today{background:var(--red);color:white}.cal-day.completed{background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,white);font-weight:800}.cal-day.draft{background:#fbf0df;color:#935f28;border-color:#ecd2ab}.action-mini{padding:11px;border-radius:14px;background:#f6f1e6;border:1px solid var(--line);margin-top:9px}.action-mini small{display:flex;justify-content:space-between;color:var(--muted);font-size:.62rem}.action-mini p{margin:7px 0 0;color:var(--ink);line-height:1.5}
.page-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px}.page-head h1{font-size:1.5rem;margin:0}.page-head p{font-size:.8rem;color:var(--muted);margin:6px 0 0}.filters{display:flex;gap:9px;flex-wrap:wrap}.filters input,.filters select{border:1px solid var(--line);background:var(--sheet);border-radius:999px;padding:9px 13px;min-height:40px}.list{display:flex;flex-direction:column;gap:11px}.list-item{width:100%;text-align:left;border:1px solid var(--line);background:var(--sheet);border-radius:17px;padding:16px;display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:center;box-shadow:0 5px 14px #281e1208}.list-item:hover{transform:translateY(-1px);box-shadow:0 9px 20px #281e1210}.list-type{font-size:.7rem;color:var(--secondary);font-weight:800}.list-main strong{display:block;font-size:.88rem;margin-bottom:5px}.list-main p{margin:0;color:var(--muted);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:64ch}.badge{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:.65rem;background:#eee8dc;color:var(--ink-2)}.badge.completed{background:#e6f1ed;color:#176b67}.badge.verified{background:#e9edf6;color:#435d91}.badge.overdue{background:#fae8e5;color:#a82c25}.badge.today{background:#f7ead6;color:#945c23}.empty{text-align:center;padding:54px 22px}.empty-mark{width:58px;height:58px;margin:0 auto 14px;border-radius:20px;display:grid;place-items:center;background:#eee6d7;color:var(--gold);font-size:1.5rem}.empty h3{margin:0 0 8px}.empty p{color:var(--muted);font-size:.8rem;margin:0 0 18px}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.palette-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.palette{border:1px solid var(--line);background:var(--sheet);border-radius:15px;padding:10px;text-align:left}.palette.active{outline:2px solid var(--primary)}.swatches{display:flex;gap:5px;margin-top:9px}.swatches i{height:18px;flex:1;border-radius:6px}.color-row{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center}.color-row input[type=color]{width:44px;height:40px;border:0;background:transparent;padding:0}.danger-zone{border-color:#e3b6b0;background:#fff9f7}.guide-flow{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:16px 0}.guide-step{text-align:center;padding:13px 8px;border:1px solid var(--line);border-radius:14px;background:#f8f3e9}.guide-step b{display:block;color:var(--secondary);font-size:1.1rem}.guide-step span{font-size:.72rem}.prose h3{font-size:1rem;margin:24px 0 8px}.prose p,.prose li{font-size:.82rem;line-height:1.8;color:var(--ink-2)}
.modal-backdrop{position:fixed;z-index:80;inset:0;background:#181513a8;backdrop-filter:blur(8px);display:grid;place-items:center;padding:18px}.modal{width:min(620px,100%);max-height:min(88dvh,900px);overflow:auto;background:var(--sheet);border:1px solid #d9c7aa;border-radius:26px;padding:25px;box-shadow:0 28px 70px #0006}.modal.wide{width:min(900px,100%)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.modal-head h2{margin:0;font-size:1.25rem}.modal-head p{margin:6px 0 0;color:var(--muted);font-size:.75rem}.modal-close{border:1px solid var(--line);background:white;border-radius:50%;width:34px;height:34px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.lock-summary{background:#f4eee2;border:1px solid var(--line);border-radius:15px;padding:14px;font-size:.78rem;line-height:1.8}.toast{position:fixed;z-index:100;right:22px;bottom:22px;width:min(360px,calc(100% - 30px));padding:13px 15px;border-radius:15px;background:#24211d;color:white;box-shadow:0 15px 34px #0004;font-size:.78rem;animation:toast-in .2s ease-out}.toast.error{background:#8f241e}.toast.success{background:#185d58}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.skeleton{position:relative;overflow:hidden;background:#eae4d9;border-radius:12px;color:transparent!important;min-height:18px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,#fff9,transparent);animation:shimmer 1.3s infinite}@keyframes shimmer{to{transform:translateX(100%)}}
.backup-target{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px;border:1px solid var(--line);border-radius:15px;background:#fff}.backup-target strong{font-size:.84rem}.backup-target p{margin:5px 0 0;color:var(--muted);font-size:.7rem}.backup-actions{display:flex;gap:7px;align-items:center}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:.77rem}.table th,.table td{text-align:left;padding:11px;border-bottom:1px solid var(--line);white-space:nowrap}.table th{color:var(--muted);font-weight:700}.inline-actions{display:flex;gap:6px}.inline-actions .btn{min-height:32px;padding:6px 10px;font-size:.68rem}
.mobile-rail-toggle{display:none}.drawer-backdrop{display:none}.hidden{display:none!important}
@media(max-width:1199px){.workspace{grid-template-columns:1fr}.right-rail{display:none}.right-rail.open{display:flex;position:fixed;z-index:60;right:0;top:60px;bottom:0;width:min(360px,92vw);overflow:auto;box-shadow:-16px 0 38px #2b21152b}.mobile-rail-toggle{display:inline-flex}.main{max-width:1020px}}
@media(max-width:820px){.auth-shell{grid-template-columns:1fr}.auth-art{min-height:260px;padding:38px 28px}.auth-quote{font-size:1.5rem;margin-top:42px}.auth-panel{padding:22px 16px}.app-shell{padding-left:0}.sidebar{transform:translateX(-105%);transition:transform .22s ease;width:min(286px,88vw)}.sidebar.open{transform:none}.drawer-backdrop.open{display:block;position:fixed;z-index:35;inset:0;background:#17130ea0}.topbar{left:0;height:56px;padding:0 14px}.mobile-menu{display:grid}.privacy-pill span{display:none}.workspace{padding-top:56px}.main{padding:17px 13px}.crumb span{display:none}.stats-grid{gap:8px}.stats-grid .stat{min-height:170px;padding:14px}.stat-main strong{font-size:2rem}.stat-top>span{font-size:.65rem}.stat-foot small{display:none}.section-card{padding:18px 15px}.section-head{align-items:center}.art-num{font-size:2.35rem}.section-title h2{font-size:1rem}.section-title p{font-size:.68rem}.input-grid,.metrics-grid,.settings-grid,.gauge-grid{grid-template-columns:1fr}.folio-word{font-size:5rem;top:-20px}.folio-number{font-size:2.8rem}.folio-badge{display:none}.metric-row{grid-template-columns:4px minmax(0,1fr)}.metric-row select{grid-column:2}.if-then{grid-template-columns:1fr}.if-then>i{transform:rotate(90deg)}.verify-lock{align-items:flex-start;flex-wrap:wrap}.list-item{grid-template-columns:76px 1fr}.list-item>.badge{grid-column:2}.page-head{align-items:flex-start;flex-direction:column}.filters{width:100%}.filters input{flex:1;min-width:160px}.guide-flow{grid-template-columns:repeat(3,1fr)}.palette-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.auth-card{padding:25px 20px}.auth-art{min-height:230px}.brand-en{font-size:.56rem}.stats-grid{grid-template-columns:1fr}.stats-grid .stat,.stats-grid .stat:nth-child(3){grid-column:auto;min-height:175px}.section-head{flex-direction:column}.section-action{width:100%}.folio-card{padding:18px 14px}.folio-head{min-height:64px}.folio-title{gap:10px}.folio-number{font-size:2.4rem}.folio-title h2{font-size:.95rem}.folio-title p{font-size:.62rem;line-height:1.5}.folio-word{right:-2px;font-size:4.2rem}.gauge-card{padding:15px}.gauge-title em{font-size:.56rem}.gauge-reading input{font-size:2.25rem}.reflection-label>small{width:100%;margin-left:0}.action-label{align-items:flex-start;flex-direction:column}.journal-meta small{display:none}.form-footer{flex-direction:column}.button-row{width:100%}.button-row .btn{flex:1}.list-item{grid-template-columns:1fr;gap:7px}.list-item>.badge{grid-column:auto;justify-self:start}.guide-flow{grid-template-columns:repeat(2,1fr)}.modal{padding:20px 16px}.backup-target{grid-template-columns:1fr}.palette-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation:none!important;transition:none!important}
