:root{--ink:#111;--ink-mid:#1c1c1c;--ink-soft:#3f3f3f;--muted:#717171;--border:#e3e3e3;--border-mid:#cacaca;--surface:#f5f5f5;--surface-mid:#efefef;--white:#fff;--red:#c00;--red-dark:#a80000;--red-rgb:204,0,0;--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 12px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04);--shadow-lg:0 12px 32px rgba(0,0,0,.1),0 4px 8px rgba(0,0,0,.04);--radius:14px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:DM Sans,system-ui,sans-serif;color:var(--ink);background:var(--surface);line-height:1.5}button{cursor:pointer;border:none;background:none}button,input,select,textarea{font-family:inherit;color:inherit}::selection{background:rgba(var(--red-rgb),.15)}.ribbon{position:fixed;top:0;left:0;right:0;z-index:60;color:#fff;font-size:12.5px;letter-spacing:.02em;text-align:center;padding:7px 16px}.ribbon.demo{background:var(--ink)}.ribbon.live{background:#0f5132}.ribbon b{font-weight:600}.ribbon .dot{color:var(--red);font-weight:700}.ribbon.live .dot{color:#5be584}.logo{display:flex;align-items:center;gap:11px;flex:none;min-width:0}.logo-mark{width:34px;height:34px;border-radius:9px;background:var(--ink);position:relative;flex:none;display:grid;place-items:center;box-shadow:var(--shadow-sm)}.logo-mark:after{content:"";position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--red)}.logo-mark span{color:#fff;font-weight:700;font-size:15px;letter-spacing:-.03em}.logo-text{display:flex;flex-direction:column;line-height:1.05}.logo-text .l1{font-weight:700;font-size:15px;letter-spacing:-.02em;white-space:nowrap}.logo-text .l2{font-size:11px;color:var(--muted);font-weight:500;letter-spacing:.01em}.gate{position:fixed;inset:0;z-index:50;background:radial-gradient(120% 90% at 50% -10%,#fff 0,var(--surface) 55%,var(--surface-mid) 100%);display:grid;place-items:center;padding:24px}.gate-card{width:100%;max-width:400px;background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-lg);padding:38px 34px;text-align:center}.gate-card .logo{justify-content:center;margin-bottom:26px}.gate-card h1{font-size:21px;letter-spacing:-.02em;margin-bottom:6px}.gate-card p.sub{color:var(--muted);font-size:14px;margin-bottom:26px}.field{text-align:left;margin-bottom:16px}.field label{display:block;font-size:12.5px;font-weight:600;color:var(--ink-soft);margin-bottom:7px;letter-spacing:.01em}.field input,.field select{width:100%;height:46px;border:1px solid var(--border-mid);border-radius:11px;padding:0 14px;font-size:15px;background:var(--white);transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px hsla(0,0%,7%,.1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 22px;border-radius:11px;font-weight:600;font-size:15px;letter-spacing:.01em;transition:transform .08s,background .15s,box-shadow .15s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--red);color:#fff;box-shadow:0 1px 2px rgba(var(--red-rgb),.3)}.btn-primary:hover{background:var(--red-dark)}.btn-primary:disabled{background:var(--border-mid);color:#fff;cursor:not-allowed;box-shadow:none}.gate-err{color:var(--red);font-size:13px;font-weight:600;margin:-4px 0 14px;min-height:18px;text-align:left}.gate-hint{margin-top:20px;font-size:12.5px;color:var(--muted);background:var(--surface);border:1px dashed var(--border-mid);border-radius:10px;padding:10px 12px}.gate-hint code{background:#fff;border:1px solid var(--border);border-radius:5px;padding:2px 7px;font-weight:600;color:var(--ink)}.app{min-height:100vh;padding-top:34px}.appbar{position:-webkit-sticky;position:sticky;top:34px;z-index:40;background:hsla(0,0%,100%,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);justify-content:space-between;padding:13px clamp(14px,3vw,26px);gap:12px 16px}.appbar,.appbar-right{display:flex;align-items:center;flex-wrap:wrap}.appbar-right{gap:10px 14px;justify-content:flex-end}.badge{font-size:11.5px;font-weight:600;color:var(--ink-soft);background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:5px 11px;letter-spacing:.01em;white-space:nowrap}.badge .g{color:#1a7f37}.badge .r{color:var(--red)}.link-btn{font-size:13.5px;color:var(--muted);white-space:nowrap;flex:none}.link-btn:hover{color:var(--ink)}.hbtn{font-size:12.5px;font-weight:600;color:var(--ink-soft);border:1px solid var(--border);border-radius:8px;padding:6px 11px;display:inline-flex;align-items:center;gap:5px;text-decoration:none;white-space:nowrap;background:#fff}.hbtn:hover{border-color:var(--ink);color:var(--ink)}.wrap{max-width:1180px;margin:0 auto;padding:clamp(20px,3vw,30px) clamp(14px,3vw,26px) 100px;display:grid;grid-template-columns:380px 1fr;grid-gap:clamp(16px,2.4vw,26px);gap:clamp(16px,2.4vw,26px);align-items:start}@media(max-width:900px){.wrap{grid-template-columns:1fr}}.page{max-width:1180px;margin:0 auto;padding:clamp(20px,3vw,30px) clamp(14px,3vw,26px) 100px}.page.narrow{max-width:620px}.panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.panel-h{padding:18px 20px 14px;border-bottom:1px solid var(--border)}.panel-h h2{font-size:16px;letter-spacing:-.01em}.panel-h p{font-size:13px;color:var(--muted);margin-top:3px}.panel-b{padding:18px 20px}.side{position:-webkit-sticky;position:sticky;top:96px}textarea{width:100%;min-height:150px;resize:vertical;border:1px solid var(--border-mid);border-radius:11px;padding:13px 14px;font-size:14px;line-height:1.65;background:var(--white);transition:border-color .15s,box-shadow .15s}textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px hsla(0,0%,7%,.08)}.row{display:flex;gap:12px;margin-top:14px}.row .field{flex:1 1;margin:0}select{width:100%;height:44px;border:1px solid var(--border-mid);border-radius:11px;padding:0 12px;font-size:14px;background:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23717171' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}.locked{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--muted);margin-top:14px;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:9px 11px}.locked svg{flex:none;margin-top:1px}.ghost-btn{width:100%;border:1px solid var(--border-mid);background:#fff;color:var(--ink);height:44px;border-radius:11px;font-weight:600;font-size:14px;margin-top:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.ghost-btn:hover{border-color:var(--ink)}.add-actions{display:flex;gap:10px}.add-actions .ghost-btn{flex:1 1;min-width:0}.import-msg{margin-top:10px;font-size:12.5px}.import-hint,.import-msg{color:var(--muted);text-align:center}.import-hint{margin-top:9px;font-size:12px;line-height:1.5}.import-hint b{color:var(--ink-soft);font-weight:600}.link-btn{background:none;border:0;padding:0;color:var(--ink);font-weight:600;font-size:12px;text-decoration:underline;cursor:pointer}.link-btn:hover{opacity:.7}.side .btn-primary{width:100%;margin-top:14px;height:48px}.side .btn-primary:disabled{cursor:not-allowed}.est{text-align:center;font-size:12.5px;color:var(--muted);margin-top:11px}.est b{color:var(--ink-soft)}.results-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.results-h h2{font-size:17px;letter-spacing:-.01em}.results-h .count{font-size:13px;color:var(--muted)}.actions{display:flex;gap:10px}.btn-ghost{border:1px solid var(--border-mid);background:#fff;color:var(--ink);height:42px;padding:0 16px;border-radius:10px;font-weight:600;font-size:13.5px;display:inline-flex;align-items:center;gap:7px}.btn-ghost:hover{border-color:var(--ink)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.btn-ghost.solid{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-ghost.solid:hover:not(:disabled){background:#000}.empty{background:#fff;border:1.5px dashed var(--border-mid);border-radius:var(--radius);padding:56px 24px;text-align:center}.empty .ic{width:52px;height:52px;border-radius:13px;background:var(--surface);display:grid;place-items:center;margin:0 auto 16px}.empty h3{font-size:16px;margin-bottom:5px}.empty p{color:var(--muted);font-size:14px;max-width:360px;margin:0 auto}.progress-wrap{margin-bottom:18px}.bar{height:6px;background:var(--surface-mid);overflow:hidden}.bar,.bar span{border-radius:100px}.bar span{display:block;height:100%;background:var(--red);width:0;transition:width .35s ease}.progress-wrap p{font-size:13px;color:var(--muted);margin-top:8px}.queue-hint{margin-top:9px;font-size:12px;color:var(--muted);text-align:center;line-height:1.5}.limit-err{margin-top:10px;color:#9b1c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:9px 11px}.hq-warn,.limit-err{font-size:12.5px;line-height:1.5}.hq-warn{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;margin:12px 0 4px;padding:10px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.hq-warn p{color:var(--muted);margin-top:3px}.hq-warn b{color:var(--ink-soft)}.hq-warn .link-btn{flex:none;font-size:12px}.queue-panel{margin-bottom:20px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.queue-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:9px}.queue-line p{font-size:13px;color:var(--muted);line-height:1.5}.queue-pct{font-size:13px;font-weight:600;color:var(--ink-soft);flex:none}.queue-hold{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.queue-billing,.queue-hold{margin-top:9px;font-size:12.5px;padding:8px 11px;line-height:1.5}.queue-billing{color:#9b1c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.queue-paused{color:var(--muted)}.queue-ok,.queue-paused{margin-top:9px;font-size:12.5px}.queue-ok{color:#065f46}.queue-warn{margin-top:9px;font-size:12.5px;color:#92400e}.queue-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.queue-actions .ghost-btn{width:auto;margin:0;padding:7px 12px;font-size:12.5px}.queue-fails{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.queue-fails summary{font-size:12.5px;font-weight:600;color:#9b1c1c;cursor:pointer}.queue-fails ul{list-style:none;margin-top:9px;gap:9px}.queue-fails li,.queue-fails ul{display:flex;flex-direction:column}.queue-fails li{gap:2px;font-size:12.5px;line-height:1.45;padding:8px 10px;background:var(--surface-mid);border-radius:8px}.queue-fails .cat{color:#9b1c1c;font-size:11.5px;text-transform:capitalize}.queue-fails .why{color:var(--muted);font-size:12px}.lb2{display:flex;flex-direction:column;gap:6px;padding:10px 11px 11px}.lb2 .pname{font-size:13px;font-weight:600;color:var(--ink);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;min-height:2.7em}.lb2 .pfile{font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb2-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:1px}.lb2-tags .qtag,.lb2-tags .tag{font-size:10.5px;line-height:1;padding:4px 6px;border-radius:5px;background:var(--surface-mid);color:var(--ink-soft);white-space:nowrap}.lb2-tags .tag.dim{color:var(--muted)}.lb2-tags .qtag{font-weight:600}.lb2-tags .q-high{background:#eef2ff;color:#3730a3}.lb2-tags .q-medium{background:#ecfdf5;color:#065f46}.lb2-tags .q-low{background:#fff7ed;color:#9a3412}.lb2-tags .q-na{background:var(--surface-mid);color:var(--muted)}.lb2 .acts{display:flex;gap:5px;margin-top:3px}.qfilter{flex:none;width:auto;min-width:170px;max-width:220px;height:40px;background-color:#fff;padding:0 32px 0 11px;font-size:13px;color:var(--ink-soft);cursor:pointer}.fieldnote{font-size:11.5px;color:var(--muted);line-height:1.5;margin-top:6px}.fieldnote b{color:var(--ink-soft);font-weight:600}.list{flex-direction:column;gap:12px}.item,.list{display:flex}.item{gap:14px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm);padding:12px;animation:pop .28s ease both}@keyframes pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.thumb{width:88px;height:88px;flex:none;border-radius:9px;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;overflow:hidden;position:relative}.thumb.chec{background-image:linear-gradient(45deg,#e9e9e9 25%,transparent 0),linear-gradient(-45deg,#e9e9e9 25%,transparent 0),linear-gradient(45deg,transparent 75%,#e9e9e9 0),linear-gradient(-45deg,transparent 75%,#e9e9e9 0);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb .idle{color:var(--border-mid)}.spin{width:22px;height:22px;border:2.5px solid var(--border);border-top-color:var(--red);border-radius:50%;animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(1turn)}}.item-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:7px}.item-main input{width:100%;height:36px;border:1px solid transparent;border-radius:8px;padding:0 9px;font-size:14px;background:var(--surface);transition:border-color .15s,background .15s}.item-main input:focus{outline:none;background:#fff;border-color:var(--border-mid)}.item-main input.name{font-weight:600;font-size:14.5px;background:#fff;border-color:var(--border)}.item-main input.desc{font-size:13px;color:var(--ink-soft)}.fn-line{display:flex;align-items:center;gap:6px}.fn-line input{font-size:12.5px;font-feature-settings:"tnum";color:var(--muted);height:32px}.err-txt{color:var(--red)}.err-txt,.warn-txt{font-size:12px;font-weight:600}.warn-txt{color:#9a5b00;line-height:1.3}.item-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px}.icobtn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);display:grid;place-items:center;color:var(--muted);background:#fff}.icobtn:hover{border-color:var(--ink);color:var(--ink)}.icobtn.danger:hover{border-color:var(--red);color:var(--red)}.item-actions{display:flex;gap:7px}.regen{font-size:12.5px;font-weight:600;color:var(--ink-soft);border:1px solid var(--border);border-radius:8px;height:32px;padding:0 11px;display:inline-flex;align-items:center;gap:6px;background:#fff}.regen:hover{border-color:var(--ink);color:var(--ink)}.regen:disabled{opacity:.5;cursor:not-allowed}footer{border-top:1px solid var(--border);text-align:center;padding:22px;font-size:12.5px;color:var(--muted)}footer a{color:var(--ink-soft);text-decoration:none;font-weight:600}.tabs{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:4px}.tabs button{font-size:13.5px;font-weight:600;color:var(--muted);padding:7px 14px;border-radius:8px;display:inline-flex;align-items:center;gap:7px}.tabs button.on{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.tabs .pill{font-size:11px;background:var(--ink);color:#fff;border-radius:100px;padding:1px 7px;font-weight:700}.variants{display:flex;gap:7px;margin-top:2px;flex-wrap:wrap}.variants .v{width:44px;height:44px;border-radius:8px;overflow:hidden;border:2px solid var(--border);cursor:pointer;position:relative;background:var(--surface);flex:none}.variants .v.chec{background-image:linear-gradient(45deg,#e9e9e9 25%,transparent 0),linear-gradient(-45deg,#e9e9e9 25%,transparent 0),linear-gradient(45deg,transparent 75%,#e9e9e9 0),linear-gradient(-45deg,transparent 75%,#e9e9e9 0);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.variants .v img{width:100%;height:100%;object-fit:cover}.variants .v.sel{border-color:var(--red);box-shadow:0 0 0 2px rgba(var(--red-rgb),.2)}.variants .lab{font-size:11.5px;color:var(--muted);align-self:center;margin-left:2px}.thumb.click{cursor:zoom-in}.lb{position:fixed;inset:0;z-index:80;background:hsla(0,0%,7%,.88);display:grid;place-items:center;padding:clamp(16px,4vw,40px);animation:fade .15s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}.lb-inner{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:min(92vw,720px);max-height:92vh}.lb-inner img{max-width:100%;max-height:calc(92vh - 58px);object-fit:contain;border-radius:14px;box-shadow:var(--shadow-xl,0 24px 48px rgba(0,0,0,.4));background:#fff}.lb .x{position:absolute;top:22px;right:26px;z-index:2;font-size:15px;font-weight:600;background:hsla(0,0%,100%,.14);padding:8px 14px}.lb .cap,.lb .x{color:#fff;border-radius:9px}.lb .cap{max-width:100%;text-align:center;font-size:14px;font-weight:500;background:rgba(0,0,0,.5);padding:7px 15px;word-break:break-word}.storage{background:#fff;border:1px solid var(--border);border-radius:12px;padding:13px 15px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.storage .st-top{display:flex;align-items:center;justify-content:space-between;gap:10px 14px;flex-wrap:wrap;margin-bottom:9px}.storage .st-lbl{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--ink-soft)}.storage .st-val{font-size:12.5px;color:var(--muted);white-space:nowrap}.storage .st-val b{color:var(--ink);font-feature-settings:"tnum"}.storage .st-bar{height:8px;background:var(--surface-mid);border-radius:100px;overflow:hidden}.storage .st-bar span{display:block;height:100%;min-width:2px;border-radius:100px;background:#1a7f37;transition:width .4s ease,background .3s}.storage.warn .st-bar span{background-color:#c77700}.storage.crit .st-bar span{background-color:var(--red)}.storage .st-warn{font-size:12px;font-weight:500;margin-top:9px}.storage.warn .st-warn{color:#8a4b00}.storage.crit .st-warn{color:var(--red)}.libbar{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.search{flex:1 1;min-width:200px;height:42px;border:1px solid var(--border-mid);border-radius:11px;padding:0 14px;font-size:14px;background:#fff}.search:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px hsla(0,0%,7%,.08)}.libgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:14px;gap:14px}.libcard{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .18s,transform .18s;animation:pop .28s ease both}.libcard:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.libcard .lt{position:relative;aspect-ratio:1;background:var(--surface);cursor:zoom-in}.libcard.sels .lt{cursor:pointer}.libcard.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--ink)}.selbar{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:9px 12px}.libbar .spacer{flex:1 1}.btn-ghost.danger{color:var(--red)}.btn-ghost.danger:hover:not(:disabled){border-color:var(--red);background:var(--red);color:#fff}.selck{position:absolute;top:8px;left:8px;width:22px;height:22px;border-radius:6px;border:2px solid #fff;background:rgba(0,0,0,.32);display:grid;place-items:center;box-shadow:0 1px 4px rgba(0,0,0,.35)}.selck.on{background:var(--ink);border-color:var(--ink)}.libcard .lt img{width:100%;height:100%;object-fit:cover;display:block}.libcard .lb2{padding:10px 11px;display:flex;flex-direction:column;align-items:stretch;gap:7px}.libcard .lb2-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.libcard .fn{flex:1 1;min-width:0;font-size:12px;color:var(--ink-soft);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.libcard .acts{display:flex;gap:5px;flex:none}.meta{display:flex;flex-wrap:wrap;gap:4px 5px;margin-top:2px}.meta span{font-size:10.5px;font-weight:600;letter-spacing:.01em;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:2px 6px;white-space:nowrap}.item-main .meta{margin-top:2px}.item-main .meta span{background:#fff}.libcard .meta{gap:0 6px;margin-top:0}.libcard .meta span{background:none;border:none;padding:0;font-size:10.5px;font-weight:500;color:var(--muted)}.libcard .meta span:not(:last-child):after{content:"·";margin-left:6px;color:var(--border-mid)}.spend{font-size:12.5px;color:var(--muted);white-space:nowrap}.spend b{color:var(--ink-soft)}.keyrow{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:18px}.keyrow b{font-size:13.5px;color:#0f7a3d;display:block}.keyrow span{font-size:12px;color:var(--muted)}.keywarn{font-size:12.5px;color:var(--ink-soft);background:#fff7ed;border:1px solid #fed7aa;border-radius:9px;padding:11px 13px;margin-bottom:18px}.keyerr{color:var(--red)}.keyerr,.keyok{font-size:12.5px;font-weight:600;margin-top:9px}.keyok{color:#0f7a3d}.keynote{font-size:12px;color:var(--muted);margin-top:16px;line-height:1.65}.keynote a{font-weight:600;text-decoration:none}.keynote a,.keynote b,.setnote{color:var(--ink-soft)}.setnote{background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:13px 15px;margin-top:16px;font-size:12.5px;line-height:1.6}.setnote>b{display:block;margin-bottom:8px;font-size:13px;color:var(--ink)}.setnote b{color:var(--ink);font-weight:600}.setnote ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.setnote li{position:relative;padding-left:16px}.setnote li:before{content:"";position:absolute;left:3px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--muted)}.setnote p{margin:0}.setnote a{color:var(--ink-soft);font-weight:600;text-decoration:none}.setnote a:hover{text-decoration:underline}.setnote.cap{background:#fff7ed;border-color:#fed7aa}.setnote.cap,.setnote.cap b,.setnote.cap>b{color:#8a4b00}.setnote.cap a{color:#8a4b00;font-weight:700}.labelrow{display:flex;align-items:baseline;justify-content:space-between;gap:2px 10px;flex-wrap:wrap;margin-bottom:7px}.labelrow label{margin-bottom:0}.helplink{background:none;border:0;padding:0;font:inherit;font-size:12px;font-weight:600;color:var(--ink-soft);text-decoration:underline;text-underline-offset:2px;text-align:left;cursor:pointer;transition:color .15s}.helplink:hover{color:var(--ink)}.helplink:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:3px}@media (hover:none){.helplink{padding:7px 0}}.setnote.help{margin-top:0;margin-bottom:12px;background:var(--white)}.setnote.help ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.setnote.help li{position:static;padding-left:2px}.setnote.help li:before{display:none}.setnote.help li::marker{color:var(--muted);font-weight:600}.setnote.help p{margin-top:10px}.setnote.help code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:1px 4px}.setnote.help .capline{border-top:1px solid var(--border);padding-top:10px;color:#8a4b00}.setnote.help .capline a,.setnote.help .capline b{color:#8a4b00}.setnote.help a,.setnote.help code{overflow-wrap:anywhere}.nokey{background:#fff7ed;border-bottom:1px solid #fed7aa;color:#8a4b00;padding:11px 26px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px;font-weight:500}.nokey b{color:#8a4b00;font-weight:700}.nokey .go{flex:none;background:var(--ink);color:#fff;border-radius:9px;height:36px;padding:0 15px;font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:6px}.nokey .go:hover{background:#000}@media(max-width:640px){.nokey{padding:11px 16px;flex-direction:column;align-items:flex-start;gap:9px}.nokey .go{width:100%;justify-content:center}}.guide-ov{position:fixed;inset:0;z-index:85;background:hsla(0,0%,7%,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:24px;animation:fade .15s ease}.guide{background:#fff;border-radius:16px;max-width:560px;width:100%;max-height:86vh;overflow:auto;box-shadow:var(--shadow-lg);animation:pop .22s ease both}.guide-h{position:-webkit-sticky;position:sticky;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:17px 22px;border-bottom:1px solid var(--border);z-index:1}.guide-h h3{font-size:16px;letter-spacing:-.01em}.guide-x{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);color:var(--muted);font-size:12px;display:grid;place-items:center;flex:none}.guide-x:hover{border-color:var(--ink);color:var(--ink)}.guide-b{padding:18px 22px 24px}.guide-b h4{font-size:13.5px;margin:18px 0 8px}.guide-b p{font-size:13px;color:var(--ink-soft);margin-bottom:10px;line-height:1.62}.guide-b ul{margin:0 0 4px;padding:0;list-style:none}.guide-b li{position:relative;padding-left:16px;font-size:12.5px;color:var(--ink-soft);margin-bottom:8px;line-height:1.58}.guide-b li:before{content:"";position:absolute;left:2px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--red)}.gtag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:100px}.gtag.ok{background:#eaf6ee;color:#0f7a3d}.gtag.care{background:#fff7ed;color:#8a4b00}.guide-note{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:11.5px;color:var(--muted);margin-top:16px;line-height:1.62}.guide-note b{color:var(--ink-soft)}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:13px;font-weight:600;padding:10px 18px;border-radius:100px;box-shadow:var(--shadow-lg);z-index:90;display:flex;align-items:center;gap:8px;animation:toastin .2s ease;max-width:calc(100vw - 32px)}.toast .tk{color:#5be584}@keyframes toastin{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media(max-width:900px){.appbar{gap:12px}.appbar-right{width:100%;justify-content:flex-start}.nokey{padding:11px clamp(14px,3vw,26px)}.wrap{max-width:760px}}@media(max-width:640px){.ribbon{font-size:10.5px;padding:6px 12px;line-height:1.35;position:static}.appbar{padding:10px 14px;gap:10px;position:static}.app{padding-top:0}.appbar-right{gap:8px;width:100%;justify-content:flex-end;align-items:center}.tabs{flex:1 1 100%}.tabs button{padding:7px 10px;font-size:12.5px;flex:1 1;justify-content:center}.hbtn{padding:6px 9px}.hbtn .lbl{display:none}.spend{order:3}.wrap{padding:18px 14px 90px;gap:16px}.side{position:static}.panel-b{padding:16px}.item{flex-wrap:wrap;gap:11px;padding:11px}.thumb{width:70px;height:70px}.item-main{flex-basis:calc(100% - 82px)}.item-side{flex-basis:100%;flex-direction:row;align-items:center;justify-content:flex-end;gap:9px}.results-h{gap:10px}.actions{flex:1 1}.actions .btn-ghost{flex:1 1;justify-content:center}.libgrid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:11px}.libbar{gap:9px}.libbar .btn-ghost{height:40px;padding:0 12px}.lb .x{top:14px;right:16px}.labelrow{gap:0}.helplink{padding:7px 0}.helplink,.labelrow label{font-size:12.5px}.setnote.help{padding:13px 14px}.setnote.help ol{padding-left:16px}}@media(max-width:400px){.logo-text .l2{display:none}.tabs button{font-size:12px;padding:6px 8px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.libcard:hover,.libcard:hover .lt img{transform:none}}:where(button,a,select,[role=dialog]):focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:9px}.btn-primary:focus-visible,.nokey .go:focus-visible{outline-color:var(--red);outline-offset:3px}.btn-ghost.solid:focus-visible{outline-offset:3px}.tabs button{transition:background .18s,color .18s,box-shadow .18s,transform .09s ease}.tabs button:active{transform:scale(.955)}.btn-ghost{transition:border-color .16s,background .16s,color .16s,transform .09s ease}.btn-ghost:active:not(:disabled){transform:translateY(1px)}.ghost-btn{transition:border-color .16s,background .16s,transform .09s ease}.ghost-btn:active{transform:translateY(1px)}.hbtn{transition:border-color .16s,color .16s,transform .09s ease}.hbtn:active{transform:translateY(1px)}.regen{transition:border-color .15s,color .15s,transform .09s ease}.regen:active:not(:disabled){transform:translateY(1px)}.link-btn{transition:color .15s}.nokey .go,.side .btn-primary{transition:background .16s,transform .09s ease,box-shadow .16s}.icobtn{transition:border-color .15s,color .15s,background .15s,transform .12s ease}.icobtn:hover{transform:translateY(-1px)}.icobtn:active{transform:scale(.88)}.libcard .lt img{transition:transform .4s cubic-bezier(.2,.7,.2,1)}.libcard:hover .lt img{transform:scale(1.05)}.item{transition:box-shadow .18s,border-color .18s}.item:hover{box-shadow:var(--shadow-md);border-color:var(--border-mid)}.variants .v{transition:border-color .15s,box-shadow .15s,transform .12s ease}.variants .v:hover{transform:translateY(-1px)}.variants .v:active{transform:scale(.93)}.selck.on{animation:tickpop .2s ease}@keyframes tickpop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.wrap{animation:fade .28s ease both}.page{animation:fadeup .3s ease both}@keyframes fadeup{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.storage .st-bar span{background-image:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.28) 50%,hsla(0,0%,100%,0));background-size:220px 100%;background-repeat:no-repeat;animation:sheen 2.4s ease-in-out infinite}@keyframes sheen{0%{background-position:-220px 0}60%,to{background-position:calc(100% + 220px) 0}}