.overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:visible}.labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.overlay g{transition:opacity .16s var(--ease-out)}.overlay .dim,.labels .dim{opacity:.2}.overlay .hl path{opacity:.45}.overlay .draw path{stroke-dasharray:1;stroke-dashoffset:1;animation:ink .4s var(--ease-out) forwards}.overlay .leader path{opacity:.55}.overlay .good path{opacity:.9}@keyframes ink{to{stroke-dashoffset:0}}.ubox{fill:none;stroke:#9eb0d8;stroke-width:.8;stroke-dasharray:3 3;opacity:.75}.ubox.pending{stroke:#d98a3a;animation:march .6s linear infinite}@keyframes march{to{stroke-dashoffset:-6}}.pbar{stroke:#cfd8ea;stroke-width:2}.dots{stroke-width:1.8;stroke-dasharray:.1 4.5;stroke-linecap:round}.utag{position:absolute;font-family:var(--mono);font-size:9.5px;color:var(--tag);line-height:1;white-space:nowrap}.utag.ctag{font-size:8.5px;opacity:.9}.utag.ptag{font-size:10.5px}.utag.pdot{color:#d98a3a;font-size:18px;animation:pulse .9s infinite}.mlabel{position:absolute;pointer-events:auto;font-family:var(--hand);font-size:19.5px;line-height:21px;white-space:nowrap;background:none;border:0;padding:0;text-align:left;--base-x: 0px;--base-rot: 0deg;transform:translate(var(--base-x)) rotate(var(--base-rot));transition:opacity .16s var(--ease-out),transform .15s var(--ease-out)}.mlabel.left{--base-x: -100%;--base-rot: -2deg;text-align:right;font-size:15px;line-height:19px}.mlabel.left.good{--base-rot: -4deg;font-size:17px}.mlabel.sel{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}.mlabel.new{animation:write .36s steps(9,end) both}@keyframes write{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -8px 0 0)}}.sections details{border-top:1px solid var(--line)}.sections details:first-child{border-top:0}.sections summary{list-style:none;cursor:pointer;padding:14px 2px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}.sections summary::-webkit-details-marker{display:none}.sections summary:before{content:"";display:inline-block;width:5px;height:5px;margin:0 9px 2px 1px;vertical-align:middle;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(-45deg);transition:transform .15s var(--ease-out)}.sections details[open]>summary:before{transform:rotate(45deg)}.sec{padding:0 2px 16px;display:grid;gap:10px}.help{margin:0;color:var(--muted);font-size:11.5px;line-height:1.5}.range{display:grid;grid-template-columns:74px 1fr 40px;align-items:center;gap:8px;color:var(--ink-2)}.range input{accent-color:var(--ink)}.chk{display:flex;align-items:center;gap:8px;color:var(--ink-2)}.chk small{margin-left:auto;color:var(--muted);font-size:10px}.chk input{accent-color:var(--ink)}.checks{display:grid;gap:6px;padding-top:4px;border-top:1px dashed var(--line)}.checks span{font-family:var(--hand);font-size:17px}select,input[type=text],.rform input,.rform textarea,.rform select{font:inherit;font-size:12.5px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:8px 10px;width:100%}select:focus,.rform input:focus,.rform textarea:focus{outline:2px solid #1d1b1722;border-color:var(--ink-2)}.rule{display:grid;grid-template-columns:22px 1fr auto;gap:8px;align-items:start;padding:8px 0;border-bottom:1px dashed var(--line)}.rule.off{opacity:.55}.tog{position:relative;display:block;padding-top:3px}.tog input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.tog .dot{display:block;width:14px;height:14px;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 0 0 7px currentColor}.rule.off .tog .dot{background:transparent!important;border-color:var(--muted)}.rn{font-family:var(--hand);font-size:18px;line-height:1.1}.scope{font-family:var(--mono);font-size:9.5px;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:1px 4px;vertical-align:3px}.rd{color:var(--ink-2);font-size:11.5px;line-height:1.45;margin-top:3px}.ra{display:flex;gap:2px}.ra button{background:none;border:0;color:var(--muted);font-size:11px;padding:2px 5px;border-radius:4px}.ra button:hover{background:#0000000a;color:var(--ink)}.add{background:none;border:1px dashed var(--muted);border-radius:6px;padding:8px;color:var(--ink-2)}.add:hover{border-style:solid;color:var(--ink)}.adds{display:grid;grid-template-columns:1fr 1fr;gap:6px}[data-drop]{border-radius:8px;transition:background-color .15s var(--ease-out)}[data-drop].dropping{background:#0000000a;outline:1.5px dashed var(--ink-2);outline-offset:4px}.pack{border-bottom:1px dashed var(--line)}.pack-h{display:grid;grid-template-columns:22px 1fr auto;gap:8px;align-items:start;padding:8px 0 4px}.pack-h .dot.off{border-color:var(--muted)}.sections .pack details{border-top:0;padding-left:30px}.pack .rule:last-child{border-bottom:0}.sections .pack-s{font-size:11px;letter-spacing:0;text-transform:none;color:var(--muted);padding:2px 0 8px}.notice{position:relative;padding:8px 28px 8px 10px;border-radius:6px;background:#00000006;font-size:11.5px;line-height:1.45;color:var(--ink-2)}.notice.err{color:var(--accent)}.notice p{margin:0}.notice ul{margin:4px 0 0;padding-left:16px;color:var(--muted)}.notice button{position:absolute;top:4px;right:4px;background:none;border:0;color:var(--muted);padding:2px 6px;border-radius:4px}.notice button:hover{background:#0000000a;color:var(--ink)}.rform{display:grid;gap:7px;padding:10px;background:#00000006;border-radius:8px}.rform textarea{resize:vertical;font-family:var(--serif);font-size:15px;line-height:1.4}.rf-row{display:flex;gap:6px}.rf-row select{flex:1}.rf-row button{border:1px solid var(--line);background:var(--paper);border-radius:5px;padding:0 10px}.rf-row .save{background:var(--ink);color:var(--paper);border-color:var(--ink)}.key .ki{display:grid;grid-template-columns:70px 1fr;gap:0 6px;align-items:center}.key .ki span{font-family:var(--hand);font-size:17px;line-height:1.1}.key .ki small{grid-column:2;color:var(--muted);font-size:10px;margin-top:-2px}.key .ki svg{grid-row:span 2}.card-slot.has{margin-bottom:14px}.card{background:var(--paper);border-radius:9px;box-shadow:0 1px #0000000d,0 10px 30px -14px #3b301a55;padding:12px 12px 10px}.card-h{display:flex;gap:8px;align-items:flex-start;padding:0 2px 8px}.card-h i{font-family:var(--serif);color:var(--muted);font-size:15px;line-height:1.35;flex:1}.x{background:none;border:0;color:var(--muted);font-size:18px;line-height:1;padding:0 3px}.fi{border-radius:7px}.fi.open{background:#ede7da}.fi-h{display:flex;align-items:baseline;gap:8px;width:100%;background:none;border:0;padding:7px 8px;text-align:left}.fl{font-family:var(--hand);font-size:21px;line-height:1;white-space:nowrap}.star{font-size:20px}.pc{color:var(--ink-2);font-weight:700;font-size:12px}.q{font-family:var(--serif);font-style:italic;color:var(--ink-2);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.fd{padding:0 10px 12px}.desc{font-family:var(--serif);font-size:16.5px;line-height:1.45;margin:2px 0 8px}.meta{color:var(--muted);font-size:11.5px;line-height:1.5;margin:2px 0}.fix{margin-top:10px;border-left:3px solid var(--blue);background:#e2e0dc;border-radius:0 6px 6px 0;padding:10px 12px}.fix.quiet{border-left-color:var(--line);background:transparent;padding:4px 10px}.fix .note{color:var(--muted);font-size:11.5px;line-height:1.5;margin:8px 0 0}.ask{width:100%;background:var(--blue);color:#fff;border:0;border-radius:5px;padding:8px 10px;font-weight:700;letter-spacing:.02em}.ask.busy{background:#8ea3cf;cursor:progress;animation:pulse 1s infinite}.pref-h{font-family:var(--hand);font-size:20px;color:var(--blue)}.pref{font-family:var(--serif);font-size:17.5px;line-height:1.45;margin:6px 0 8px}.apply{width:100%;margin-top:10px;background:var(--ink);color:var(--paper);border:0;border-radius:5px;padding:8px;font-weight:700}.apply:hover{background:#000}.apply.small{width:auto;padding:5px 10px;margin-top:6px}.more{background:none;border:0;color:var(--muted);padding:10px 0 0;font-size:11.5px}.cands{display:grid;gap:8px;margin-top:8px}.cand{background:var(--paper);border-radius:5px;padding:8px 10px}.cand p{font-family:var(--serif);font-size:15px;line-height:1.4;margin:0 0 6px}.cm{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;color:var(--muted);font-size:10.5px}.cm .apply{margin:0 0 0 auto}.warn,.err{color:var(--accent);font-size:11.5px;margin:6px 0 0}.hint{font-family:var(--serif);font-style:italic;color:var(--muted);font-size:13.5px;padding:8px 8px 0}.verdict-slot.has{margin-bottom:14px}.verdict{background:var(--paper);border-radius:9px;border-left:4px solid var(--route, var(--muted));box-shadow:0 1px #0000000d,0 10px 30px -14px #3b301a55;padding:11px 12px 10px}.verdict.route-auto-close{--route: var(--muted)}.verdict.route-learn{--route: var(--blue)}.verdict.route-review{--route: #d98a3a}.verdict.route-priority{--route: var(--accent)}.v-h{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.v-badge{font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--route, var(--muted));border-radius:4px;padding:3px 7px}.v-sub{color:var(--ink-2);font-size:11.5px;line-height:1.4}.v-rows{display:grid;gap:4px;margin-top:9px}.vr{display:grid;grid-template-columns:auto auto auto 1fr;gap:8px;align-items:baseline;width:100%;text-align:left;background:none;border:0;padding:5px 6px;border-radius:6px}.vr.link{cursor:pointer}.vr.link:hover{background:#0000000a}.v-name{font-family:var(--hand);font-size:18px;line-height:1;color:var(--ink)}.v-lvl{font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);border-radius:3px;padding:1px 4px;color:var(--ink-2)}.v-lvl.lvl-priority{color:var(--accent);border-color:var(--accent)}.v-lvl.lvl-review{color:#b0662c;border-color:#d98a3a}.v-lvl.lvl-learn{color:var(--blue);border-color:var(--blue)}.v-lvl.unsure{color:var(--muted)}.v-pc{color:var(--ink-2);font-weight:700;font-size:11.5px}.v-q{font-family:var(--serif);font-style:italic;color:var(--ink-2);font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.v-note{color:var(--muted);font-size:11.5px;margin:8px 0 0}.rroute{font-family:var(--mono);font-size:9px;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);border-radius:3px;padding:1px 4px;vertical-align:3px;color:var(--ink-2)}.rroute-priority{color:var(--accent);border-color:var(--accent)}.rroute-review{color:#b0662c;border-color:#d98a3a}.rroute-learn{color:var(--blue);border-color:var(--blue)}.route-badge{position:fixed;pointer-events:auto;z-index:3;cursor:pointer;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--muted);border:0;border-radius:5px;padding:4px 8px;box-shadow:0 6px 20px -8px #3b301aaa}.route-badge[hidden]{display:none}.route-badge.route-auto-close{background:var(--muted)}.route-badge.route-learn{background:var(--blue)}.route-badge.route-review{background:#d98a3a}.route-badge.route-priority{background:var(--accent)}.route-badge.updating{opacity:.6}:root{--desk: #e9e3d6;--side: #efe9dd;--paper: #faf7f0;--ink: #1d1b17;--ink-2: #4a463e;--muted: #8d8679;--line: #d8cfbf;--tag: #7b92c8;--accent: #c8474f;--blue: #4a72c4;--serif: "Newsreader", "Iowan Old Style", Georgia, serif;--hand: "Nanum Pen Script", "Comic Sans MS", cursive;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--side-w: 372px;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1)}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--desk);color:var(--ink);font-family:var(--mono);font-size:13px;overflow:hidden;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer}.top{height:54px;display:flex;align-items:center;gap:22px;padding:0 22px;border-bottom:1px solid var(--line);background:var(--side)}.logo{font-family:var(--hand);font-size:27px;line-height:1;position:relative;padding-bottom:5px}.logo:after{content:"";position:absolute;left:-2px;right:-4px;bottom:0;height:3px;background:var(--accent);border-radius:3px 1px 2px 3px;transform:rotate(-1.2deg)}.stats-bar{display:flex;gap:0;color:var(--ink-2);white-space:nowrap;overflow:hidden;min-width:0}.stats-bar span{padding:0 11px;border-left:1px solid var(--line)}.stats-bar span:first-child{border-left:0;padding-left:0}.stats-bar b{color:var(--ink);font-weight:700}.top-r{margin-left:auto;display:flex;align-items:center;gap:10px}.status{color:var(--ink-2);display:inline-flex;align-items:center;gap:7px;margin-right:12px;white-space:nowrap}.status i{width:8px;height:8px;border-radius:50%;background:#b9b2a5}.status.ok i{background:#3f9a6b;box-shadow:0 0 0 3px #3f9a6b22}.status.busy i{background:#d98a3a;animation:pulse .9s ease-in-out infinite}.status.err{color:var(--accent)}.status.err i{background:var(--accent)}.pill{font-size:12px;font-weight:700;letter-spacing:.08em;padding:5px 10px;border-radius:5px;border:1px solid var(--line);background:transparent;color:var(--muted)}.pill.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}@keyframes pulse{50%{opacity:.35}}.main{display:flex;height:calc(100% - 54px)}.desk{flex:1;overflow:auto;min-width:0;padding:28px 0 80px}.side{width:var(--side-w);flex:none;background:var(--side);border-left:1px solid var(--line);display:flex;flex-direction:column;position:relative}.side-scroll{flex:1;overflow:auto;padding:16px 18px 20px}.page{position:relative;width:990px;min-height:calc(100% - 20px);margin:0 auto 0 max(24px,calc(50% - 495px));background:var(--paper);box-shadow:0 1px #0000000a,0 12px 40px -18px #3b301a38;padding:64px 250px 120px 168px}.page:before{content:"";position:absolute;top:0;bottom:0;left:150px;border-left:1px solid #efe7d8}.editor{position:relative;z-index:1;font-family:var(--serif);font-size:21px;line-height:1.78;outline:none;min-height:60vh;caret-color:var(--accent);font-optical-sizing:auto}.editor p{margin:0 0 1.25em}.editor.empty:before{content:attr(data-placeholder);position:absolute;color:#b3ab9c;font-style:italic;pointer-events:none}.editor ::selection{background:#f2d7a7}.printer-slot{flex:none;padding:0 12px;position:relative}body.log-hidden .printer-slot{display:none}body.card-open .paper-window{max-height:150px}.printer{position:relative}.paper-window{position:relative;max-height:min(46vh,380px);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 60px);mask-image:linear-gradient(to bottom,transparent 0,#000 60px)}.paper{width:calc(100% - 26px);background:repeating-linear-gradient(90deg,transparent 0 57px,#0000000b 57px 58px),#fdfcf8;box-shadow:0 0 0 1px #0000000a,0 2px 12px #00000014;padding:10px 12px 6px;font-size:11px;line-height:1.55;color:#2c2a25;pointer-events:auto}.paper.torn{position:absolute;bottom:0;left:13px;animation:tear .45s var(--ease-drawer) forwards;transform-origin:20% 100%;clip-path:polygon(0 0,100% 0,100% 97%,92% 100%,84% 97%,76% 100%,68% 97%,60% 100%,52% 97%,44% 100%,36% 97%,28% 100%,20% 97%,12% 100%,4% 97%,0 100%)}@keyframes tear{20%{transform:translate(4px,-10px) rotate(1deg)}to{transform:translate(-30px,-60vh) rotate(-14deg);opacity:0}}.rhead{text-align:center;color:#9a9385;letter-spacing:.12em;font-size:10px;padding:4px 0 2px}.rhead .cols{letter-spacing:.1em}.rhead .rule{border-bottom:1px dashed #cfc7b7;margin:6px 0}.rline{display:grid;grid-template-columns:70px 44px 22px 1fr auto;gap:6px;white-space:nowrap}.rline span{overflow:hidden;text-overflow:ellipsis}.rline .t{color:#9a9385}.rline .tag{font-weight:700}.rline .u{color:#7f786b}.rline .ms{color:#9a9385;text-align:right}.rline.judge .tag{color:var(--blue)}.rline.local .tag{color:#d98a3a}.rline.code .tag{color:#3f9a6b}.rline.rank .tag{color:#8a5bb8}.rline.fix .tag{color:#2f9a6b}.rline.info .tag{color:#9a9385}.rline.route .tag{color:#b0662c;font-weight:700}.rline.err .tag,.rline.err .a{color:var(--accent)}.rgap{height:10px}.rrow{display:flex;gap:6px;align-items:baseline;font-size:11.5px}.rrow.title{justify-content:center;font-family:var(--hand);font-size:26px;letter-spacing:.08em;padding-top:12px}.rrow.note{justify-content:center;color:#8f887a;font-size:10px;text-align:center}.rrow.rule{border-bottom:1px dashed #bdb5a4;margin:6px 0;height:1px}.rrow .dots{flex:1;border-bottom:1px dotted #b7af9f;transform:translateY(-3px)}.rrow.sub{color:#7f786b;font-style:italic;padding-left:14px;font-size:10.5px}.rrow.total{justify-content:center;font-weight:700;letter-spacing:.06em;padding:8px 0;border-top:2px solid #2c2a25;border-bottom:2px solid #2c2a25;margin:8px 0}.rrow.barcode{flex-direction:column;align-items:center;gap:2px;padding:4px 0}.rrow.barcode svg{width:70%;height:30px;fill:#2c2a25}.rrow.barcode .bc{font-size:9.5px;letter-spacing:.3em;color:#6f685c}.printer-body{position:relative;height:46px;margin-bottom:12px;background:linear-gradient(#34322d,#23221f);border-radius:9px 9px 12px 12px;box-shadow:0 8px 18px -8px #000a,inset 0 1px #ffffff14;display:flex;align-items:center;gap:10px;padding:0 10px 0 14px;color:#a8a194;font-size:11px;font-weight:700;letter-spacing:.14em}.printer-body .slot{position:absolute;top:-3px;left:8px;right:8px;height:8px;background:#111;border-radius:4px;box-shadow:inset 0 2px 3px #000}.lamp{width:7px;height:7px;border-radius:50%;background:#3d4a3a;box-shadow:inset 0 1px 1px #0008}.lamp.on{background:#8ef08e;box-shadow:0 0 8px #8ef08e}.brand i{font-style:normal;color:#5c574e;font-weight:400}.counter{margin-left:auto;font-size:14px;letter-spacing:.12em;color:#b7f36a;background:#0c0d0b;border-radius:4px;padding:4px 8px;text-shadow:0 0 6px #b7f36a88}.printer-body button{background:#3b3934;border:0;color:#d2ccbf;border-radius:5px;padding:6px 8px;font-size:10.5px;letter-spacing:.1em;font-weight:700;box-shadow:0 2px #151412,inset 0 1px #ffffff12;transition:transform .12s var(--ease-out),box-shadow .12s var(--ease-out)}.printer-body button:active{transform:translateY(2px);box-shadow:0 0 #151412}.slip{position:absolute;z-index:4;top:8px;left:50%;translate:-50% 0;display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:var(--ink);color:var(--paper);border:0;border-radius:999px;padding:0 16px;font-size:14px;font-weight:700;letter-spacing:0;box-shadow:0 4px 14px color-mix(in srgb,var(--ink) 22%,transparent);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s var(--ease-out),visibility 0s linear .18s}.slip.on{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s var(--ease-out),visibility 0s linear 0s}.slip.off{transition:none}.slip:active{translate:-50% 1px}.slip:focus-visible{outline:2px solid var(--blue);outline-offset:2px}body.slip-open .slip{left:auto;right:20px;translate:0 0}body.slip-open .slip:active{translate:0 1px}.printer.clipped:not(.held) .paper{cursor:pointer}body.slip-open .paper-window{max-height:none;justify-content:flex-start;overflow:visible;pointer-events:auto;-webkit-mask-image:none;mask-image:none}body.slip-open .paper{margin-top:auto}@media(min-width:1101px){body.slip-open .side-scroll{flex:0 0 0;min-height:0;padding-top:0;padding-bottom:0;overflow:hidden;visibility:hidden}body.slip-open .printer-slot{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}body.slip-open .printer{flex:1;min-height:0;display:flex;flex-direction:column}body.slip-open .paper-window{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}}.record{position:fixed;top:0;right:0;bottom:0;width:min(1080px,90vw);background:#faf8f2;box-shadow:-20px 0 60px -20px #0006;transform:translate(102%);transition:transform .16s var(--ease-drawer);z-index:20;display:flex;flex-direction:column}.record.open{transform:none;transition-duration:.22s}.record.instant{transition:none}.main:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#2b261c55;z-index:10;opacity:0;pointer-events:none;transition:opacity .16s var(--ease-out)}body.record-open .main:after{opacity:1;pointer-events:auto}body.record-instant .main:after{transition:none}.rec-head{display:flex;align-items:baseline;gap:18px;padding:20px 28px 16px;border-bottom:1px solid var(--line)}.rec-head h2{font-family:var(--hand);font-weight:400;font-size:30px;margin:0}.rec-head .sub{color:var(--muted)}.rec-close{margin-left:auto;background:none;border:0;font-size:24px;color:var(--muted)}.rec-body{overflow:auto;padding:18px 28px 60px}.stats{display:flex;flex-wrap:wrap;gap:10px 28px;color:var(--ink-2);padding-bottom:20px}.stats b{color:var(--ink)}.lat{padding:6px 0 22px;border-bottom:1px solid var(--line)}.lat-h{color:var(--ink-2);letter-spacing:.08em;font-size:12px;margin-bottom:12px}.lat-h .k{font-weight:700}.k.judge{color:var(--blue)}.k.rank{color:#8a5bb8}.lat-bars{display:flex;align-items:flex-end;gap:4px;height:60px}.lat-bars i{width:12px;border-radius:2px 2px 0 0;background:#9db3e0}.lat-bars i.rank{background:#bfa2dc}.ucard{border-bottom:1px solid var(--line);padding:18px 20px}.ucard.paragraph{background:#f1ede4}.uh{display:flex;gap:16px;align-items:baseline;margin-bottom:10px}.uh span{margin-left:auto;color:var(--ink-2)}.uh .src{margin-left:0;color:var(--blue)}.ub{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:36px}.ut{font-family:var(--serif);font-size:18px;line-height:1.6;margin:0}.bars{display:grid;gap:7px;align-content:start}.br{display:grid;grid-template-columns:128px 1fr 44px;align-items:center;gap:12px;color:var(--ink-2)}.br.on .bl{color:var(--ink);font-weight:700}.bt{position:relative;height:8px;background:#e6e0d4}.bt i{position:absolute;left:0;top:0;bottom:0;background:#9e978a}.br.on .bt i{background:#4a463e}.bt em{position:absolute;top:-5px;bottom:-5px;width:1.5px;background:var(--accent)}.bv{text-align:right;color:var(--ink)}.loc{margin:4px 0 8px 140px;padding-top:8px;border-top:1px dotted var(--line);display:grid;gap:4px}.lh{color:var(--ink-2);margin-bottom:4px}.lr{display:grid;grid-template-columns:44px 1fr 90px 40px;gap:10px;align-items:center;color:var(--muted)}.lr .lt{font-family:var(--serif);font-size:15.5px;color:var(--ink-2)}.lr.top .lt{color:var(--ink);font-weight:500}.lb{height:6px;background:#ece6da;position:relative}.lb i{position:absolute;inset:0 auto 0 0;background:#d98a3a}.lv{text-align:right;color:var(--ink)}details>summary{cursor:pointer}.ucard details summary{color:var(--blue);margin-top:10px}.ucard pre{font-size:11px;background:#f1ede4;padding:12px;border-radius:6px;overflow:auto;max-height:360px}.empty-rec{color:var(--muted);font-family:var(--serif);font-style:italic;font-size:18px}@media(max-width:1320px){:root{--side-w: 330px}.page{width:900px;padding-right:210px;margin-left:24px}}@media(max-width:1100px){body{overflow:auto}.main{flex-direction:column;height:auto}.side{width:auto;border-left:0;border-top:1px solid var(--line)}.desk{overflow-x:auto}.page{width:auto;max-width:900px;margin:0 max(16px,calc(50% - 450px))}}@media(max-width:640px){.top{height:auto;flex-wrap:wrap;gap:8px 12px;padding:10px 16px}.top-r{flex:1;justify-content:flex-end;gap:6px;min-width:0}.status{margin-right:2px;font-size:12px;min-width:0;overflow:hidden}.status i{flex:none}.stats-bar{order:3;flex-basis:100%;overflow-x:auto;font-size:12px;scrollbar-width:none}.stats-bar::-webkit-scrollbar{display:none}.pill{padding:8px;flex:none}.desk{padding:0 0 48px;overflow-x:hidden}.page{margin:0;min-height:0;padding:36px 112px 72px 34px;overflow-x:clip;box-shadow:none}.page:before{display:none}.editor{font-size:17px;line-height:1.75;min-height:40vh}.mlabel{font-size:15px;max-width:96px;overflow:hidden;text-overflow:ellipsis}.side-scroll{padding:12px 16px 16px}.printer-slot{padding:0 16px}select,input[type=text],.rform input,.rform textarea,.rform select{font-size:16px}.record{width:100%}.rec-head{position:relative;flex-wrap:wrap;gap:4px 12px;padding:16px 52px 16px 16px}.rec-close{position:absolute;top:8px;right:8px;width:44px;height:44px}.uh{flex-wrap:wrap;gap:4px 12px}.rec-body{padding:12px 16px 48px}.ucard{padding:16px 0}.ub{grid-template-columns:minmax(0,1fr);gap:16px}.br{grid-template-columns:96px minmax(0,1fr) 40px;gap:8px}.bl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loc{margin-left:0}.lr{grid-template-columns:36px minmax(0,1fr) 56px 36px;gap:8px}}@media(hover:hover)and (pointer:fine){button.mlabel:hover{transform:translate(var(--base-x)) translate(2px) rotate(calc(var(--base-rot) - 1deg))}.ask:hover{background:#5a80d0}}@media(prefers-reduced-motion:reduce){.overlay .draw path{animation:none;stroke-dashoffset:0}.mlabel.new,.paper.torn,.ubox.pending,.status.busy i,.utag.pdot,.ask.busy{animation:none}.overlay g,.mlabel,.sections summary:before,.record,.main:after,.printer-body button{transition-duration:0s}.slip:active{translate:-50% 0}body.slip-open .slip:active{translate:0 0}.slip,.slip.on{transition:none}button.mlabel:hover{transform:translate(var(--base-x)) rotate(var(--base-rot))}}
