.vb{width:40px;height:40px;color:var(--ink-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background-color .15s;display:inline-flex}.vb:active{background:var(--surface-2)}.vb-on{color:#fff;background:var(--brand);animation:1.4s ease-out infinite vb-pulse}.vb-on:active{background:var(--brand-deep)}@keyframes vb-pulse{0%{box-shadow:0 0 #1f9c8673}to{box-shadow:0 0 0 10px #1f9c8600}}@media (prefers-reduced-motion:reduce){.vb-on{animation:none}}.vf{width:100%;position:relative}.vf .vf-el{width:100%}.vf-single .vf-el,.vf-multi .vf-el{padding-right:44px!important}.vf-btn{position:absolute;right:2px}.vf-single .vf-btn{top:50%;transform:translateY(-50%)}.vf-multi .vf-btn{top:4px}.vp{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100% - 24px);max-width:calc(var(--shell-w) - 24px);z-index:900;background:var(--surface);border-radius:16px;padding:14px 16px 12px;position:fixed;transform:translate(-50%);box-shadow:0 8px 32px #23302b2e}.vp-row{align-items:center;gap:12px;display:flex}.vp-wave{flex-shrink:0;align-items:center;gap:3px;width:34px;height:28px;display:flex}.vp-wave span{background:var(--brand);transform-origin:50%;border-radius:2px;width:4px;height:28px;transition:transform .1s linear;display:block}.vp-wave-idle span{background:var(--brand-soft)}.vp-text{color:var(--ink);flex:1;font-size:15px;line-height:1.4}.vp-time{color:var(--ink-3);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px;display:block}.vp-actions{gap:10px;margin-top:12px;display:flex}.vp-btn{background:var(--surface-2);height:40px;color:var(--ink-2);border-radius:20px;flex:1;font-size:15px}.vp-done{background:var(--brand);color:#fff;font-weight:500}.vp-btn:disabled{opacity:.45}:root{--bg:#f7f5f0;--surface:#fff;--surface-2:#f0ede6;--line:#e3e0d8;--ink:#1f2a27;--ink-2:#5b6663;--ink-3:#8d958f;--brand:#1f9c86;--brand-deep:#17806e;--brand-soft:#d6f0ea;--brand-tint:#ecf7f4;--accent:#e39a5e;--accent-deep:#c7823f;--accent-soft:#fbe9d9;--ok:#3e9a75;--ok-soft:#e1f1ea;--warn:#c08a3e;--warn-soft:#f7ecd6;--danger:#c2574f;--danger-soft:#f6e1de;--r-card:12px;--r-btn:10px;--r-input:8px;--shadow:0 2px 8px #23302b0f;background:var(--bg);color:var(--ink);font-variant-numeric:tabular-nums;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,sans-serif;font-size:15px;line-height:1.7}.page{box-sizing:border-box;padding:14px 16px 40px}.row{align-items:center;display:flex}.row-between{justify-content:space-between;align-items:center;display:flex}.col{flex-direction:column;display:flex}.flex1{flex:1;min-width:0}.gap{height:12px}.gap-lg{height:24px}.divider{background:var(--line);height:.5px;margin:12px 0}.h1{color:var(--ink);margin:8px 0 12px;font-size:20px;font-weight:600;line-height:1.4}.h2{color:var(--ink);margin:16px 0 7px;font-size:16px;font-weight:600}.title{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:600}.muted{color:var(--ink-2);font-size:13px}.faint{color:var(--ink-3)}.small{font-size:12px}.strong{font-weight:600}.lead{color:var(--ink-2);font-size:15px;line-height:1.8}.link{color:var(--brand)}.num{font-variant-numeric:tabular-nums;font-weight:600}.eyebrow{letter-spacing:1px;color:var(--ink-3);text-transform:uppercase;margin-bottom:4px;font-size:11px}.card{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.card-tap:active{background:var(--surface-2)}.card-tint{background:var(--brand-tint);box-shadow:none}.card-soft{background:var(--surface-2);box-shadow:none}.block{background:var(--surface-2);border-radius:var(--r-input);padding:10px 12px}.btn{box-sizing:border-box;text-align:center;border-radius:var(--r-btn);border:none;margin:0;padding:12px 16px;font-size:15px;font-weight:500;line-height:1.4;transition:opacity .12s,transform .12s;display:block}.btn:after{border:none}.btn:active{transform:scale(.985)}.btn-primary{background:var(--brand);color:#fff}.btn-primary:active{background:var(--brand-deep)}.btn-primary[disabled]{background:var(--brand-soft);color:var(--ink-3)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:active{background:var(--accent-deep)}.btn-ghost{background:var(--surface);color:var(--brand);border:.75px solid var(--brand-soft)}.btn-ghost:active{background:var(--brand-tint)}.btn-quiet{color:var(--ink-2);background:0 0}.btn-danger{background:var(--surface);color:var(--danger);border:.75px solid var(--danger-soft)}.btn-sm{border-radius:7px;padding:6px 13px;font-size:13px;display:inline-block}.btn-block{width:100%;margin-top:12px}.btn-row{gap:8px;display:flex}.btn-row .btn{flex:1}.tag{background:var(--surface-2);color:var(--ink-2);border-radius:499.5px;margin:0 6px 4px 0;padding:3px 9px;font-size:11px;display:inline-block}.tag-on{background:var(--brand-soft);color:var(--brand-deep)}.tag-ok{background:var(--ok-soft);color:var(--ok)}.tag-warn{background:var(--warn-soft);color:var(--warn)}.tag-danger{background:var(--danger-soft);color:var(--danger)}.tag-accent{background:var(--accent-soft);color:var(--accent-deep)}.chip{border:.75px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:499.5px;margin:0 6px 6px 0;padding:6px 12px;font-size:13px;display:inline-block}.chip-on{background:var(--brand-soft);color:var(--brand-deep);border-color:var(--brand-soft);font-weight:500}.badge{background:var(--accent);color:#fff;text-align:center;border-radius:499.5px;min-width:16px;padding:1px 6px;font-size:10px;line-height:1.6;display:inline-block}.label{color:var(--ink-2);margin:18px 0 6px;font-size:13px}.card>.label:first-child{margin-top:0}.label-req:after{content:" *";color:var(--accent)}.input,.textarea,.picker{box-sizing:border-box;background:var(--surface-2);border-radius:var(--r-input);width:100%;min-height:48px;color:var(--ink);border:.75px solid #0000;padding:12px;font-size:15px;line-height:22px}.input:focus,.textarea:focus{border-color:var(--brand-soft);background:var(--surface)}.textarea{min-height:90px}.picker{justify-content:space-between;align-items:center;display:flex}.picker:after{content:"›";color:var(--ink-3);font-size:16px;transform:rotate(90deg)}.picker-empty{color:var(--ink-3)}.hint{color:var(--ink-3);margin-top:4px;font-size:12px}.level-low{color:var(--ok)}.level-medium{color:var(--warn)}.level-high{color:var(--danger)}.pill-low{background:var(--ok-soft);color:var(--ok)}.pill-medium{background:var(--warn-soft);color:var(--warn)}.pill-high{background:var(--danger-soft);color:var(--danger)}.warn-box{background:var(--warn-soft);color:var(--warn);border-radius:var(--r-input);padding:9px 12px;font-size:13px;line-height:1.6}.info-box{background:var(--brand-tint);color:var(--brand-deep);border-radius:var(--r-input);padding:9px 12px;font-size:13px;line-height:1.6}.danger-box{background:var(--danger-soft);color:var(--danger);border-radius:var(--r-input);padding:9px 12px;font-size:13px;line-height:1.6}.empty{text-align:center;color:var(--ink-2);padding:48px 12px;font-size:14px;line-height:1.8}.empty .link{margin-top:6px;display:inline-block}.progress-bar{background:var(--surface-2);border-radius:499.5px;height:6px;overflow:hidden}.progress-fill{background:var(--brand);border-radius:499.5px;height:100%;transition:width .3s}.list-item{border-bottom:.5px solid var(--line);align-items:center;padding:12px 0;display:flex}.list-item:last-child{border-bottom:none}.list-item:active{opacity:.7}.arrow{color:var(--ink-3);margin-left:6px;font-size:17px}.quote{background:var(--surface-2);border-left:2px solid var(--brand-soft);border-radius:0 var(--r-input) var(--r-input) 0;color:var(--ink-2);padding:8px 12px;font-size:13px;line-height:1.7}.orb{background:var(--brand);width:24px;height:24px;box-shadow:0 0 0 3px var(--surface), 0 4px 12px #1f9c8659;border-radius:50%;flex-shrink:0;animation:4s ease-in-out infinite orb-breathe}.orb-sm{width:16px;height:16px;box-shadow:0 0 0 2px var(--surface), 0 3px 8px #1f9c864d}@keyframes orb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.ai-head{align-items:center;gap:8px;display:flex}.ai-head-t{font-size:15px;font-weight:600;line-height:1.3}.ai-head-d{color:var(--ink-2);font-size:12px}.sheet-mask{z-index:100;background:#23302b59;position:fixed;inset:0}.sheet{background:var(--surface);z-index:101;border-radius:16px 16px 0 0;max-height:82vh;padding:10px 16px 32px;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.sheet:before{content:"";background:var(--line);border-radius:499.5px;width:36px;height:4px;margin:0 auto 12px;display:block}.ts-p{color:var(--ink);font-size:14px;line-height:1.7}.ts-by{color:var(--ink-2);margin-right:4px}.ts-by:empty{display:none}.ts-item{border-top:.5px solid var(--line);padding:6px 0}.ts-item:first-of-type{border-top:none;padding-top:0}.ts-quote{color:var(--ink-3);border-left:2px solid var(--brand-soft);margin-top:4px;padding-left:8px;font-size:12px;line-height:1.6}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.7}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,textarea,select{font:inherit;color:inherit;outline:none}textarea{resize:vertical;display:block}select{appearance:none}img{max-width:100%;display:block}a{color:var(--brand);text-decoration:none}.btn{cursor:pointer;width:100%}.btn-sm{width:auto}.btn[disabled],.btn:disabled{cursor:not-allowed}.btn-primary:disabled{background:var(--brand-soft);color:var(--ink-3)}.card-tap,.p-index-index .kept-item{cursor:pointer}.p-index-index .kept-item:active{opacity:.7}.input,.textarea,.picker{outline:none}@supports (-webkit-touch-callout:none){input,textarea,select,.input,.textarea,.picker{font-size:16px}}select.picker{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%238D958F' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}:root{--nav-h:48px;--tab-h:56px;--shell-w:540px}.shell{min-height:100dvh;max-width:var(--shell-w);background:var(--bg);margin:0 auto;position:relative}@media (width>=541px){html{background:#e9e6df}.shell{box-shadow:0 0 0 1px var(--line)}}.shell-nav{z-index:50;height:var(--nav-h);background:var(--bg);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top);justify-content:center;align-items:center;display:flex;position:sticky;top:0}.shell-title{text-overflow:ellipsis;white-space:nowrap;max-width:70%;font-size:16px;font-weight:600;overflow:hidden}.shell-back{width:44px;color:var(--ink);justify-content:center;align-items:center;font-size:30px;line-height:1;display:flex;position:absolute;top:0;bottom:0;left:4px}.shell-main{min-height:calc(100dvh - var(--nav-h))}.shell-no-nav .shell-main{min-height:100dvh;padding-top:env(safe-area-inset-top)}.shell-has-tab .shell-main{padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom))}.shell-loading{text-align:center;color:var(--ink-3);padding:120px 0;font-size:14px}.shell-full .shell-main{min-height:0}.fill-screen{height:calc(100dvh - var(--nav-h) - env(safe-area-inset-top));flex-direction:column;display:flex;overflow:hidden}.shell-has-tab .fill-screen{height:calc(100dvh - var(--nav-h) - var(--tab-h) - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.shell-tabbar{width:100%;max-width:var(--shell-w);z-index:60;height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fff;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.shell-tab{color:#8d958f;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.shell-tab-dot{background:0 0;border-radius:50%;width:6px;height:6px}.shell-tab-on{color:#1f9c86;font-weight:600}.shell-tab-on .shell-tab-dot{background:#1f9c86}.ui-mask{z-index:1000;background:#23302b59;position:fixed;inset:0}.ui-mask-clear{background:0 0}.ui-center{justify-content:center;align-items:center;padding:24px;display:flex}.ui-toast-wrap{pointer-events:none;z-index:1100;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-toast{color:#fff;text-align:center;background:#1f2a27e0;border-radius:10px;max-width:70%;padding:10px 16px;font-size:14px;line-height:1.5}.ui-toast-icon{flex-direction:column;align-items:center;gap:8px;min-width:120px;padding:18px 16px 14px;display:flex}.ui-toast-mark{font-size:28px;line-height:1}.ui-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-modal{background:var(--surface);text-align:center;border-radius:14px;width:100%;max-width:320px;overflow:hidden}.ui-modal-title{padding:24px 20px 0;font-size:17px;font-weight:600}.ui-modal-content{color:var(--ink-2);white-space:pre-wrap;text-align:center;max-height:50vh;padding:12px 20px 24px;font-size:15px;line-height:1.6;overflow-y:auto}.ui-modal-title+.ui-modal-content{padding-top:10px}.ui-modal-input{text-align:left;width:calc(100% - 40px);min-height:90px;margin:14px 20px 20px}.ui-modal-actions{border-top:1px solid var(--line);display:flex}.ui-modal-btn{height:50px;color:var(--ink);flex:1;font-size:16px}.ui-modal-btn+.ui-modal-btn{border-left:1px solid var(--line)}.ui-modal-ok{color:var(--brand);font-weight:600}.ui-sheet{width:100%;max-width:var(--shell-w);background:var(--surface-2);padding-bottom:env(safe-area-inset-bottom);border-radius:14px 14px 0 0;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.ui-sheet-item{background:var(--surface);border-bottom:1px solid var(--line);width:100%;height:54px;font-size:16px;display:block}.ui-sheet-cancel{border-bottom:none;margin-top:8px}.sheet{width:100%;max-width:var(--shell-w);left:50%;right:auto;transform:translate(-50%)}
