:root{--bg: #fcfcfc;--surface: #ffffff;--rail: #f7f8f8;--line: #e6e6e8;--line-strong: #d8d8dc;--text: #282a30;--muted: #6f6e77;--faint: #9b9a9e;--accent: #5e6ad2;--accent-ink: #ffffff;--accent-soft: #eef0fb;--danger: #c8332b;--danger-soft: #fdecea;--ok: #2ea44f;--ok-soft: #e7f6ec;--share: #3b82f6;--warn-bg: #fff8e6;--warn-line: #f2c94c;--radius: 6px;--font: "IBM Plex Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", Meiryo, "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, "Cascadia Mono", Consolas, monospace;--gutter: 28px;--rail-w: 232px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0;background:var(--bg);color:var(--text);font:13.5px/1.55 var(--font)}body{min-height:100vh;-webkit-tap-highlight-color:transparent;overflow-wrap:anywhere;font-feature-settings:"palt"}a{color:var(--accent);text-decoration:none}h1,h2,h3{margin:0 0 .5rem;font-weight:600;line-height:1.35;letter-spacing:-.01em}h1{font-size:18px}h2{font-size:14px}p{margin:0 0 .75rem}code,.mono{font-family:var(--mono);font-size:12.5px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button,input,select,textarea{font:inherit}button,[role=button],a.btn,label.btn{touch-action:manipulation}svg{flex-shrink:0}.ico{width:16px;height:16px;display:inline-block;vertical-align:-3px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.shell{display:flex;min-height:100vh}.rail{width:var(--rail-w);flex:none;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--rail);border-right:1px solid var(--line);padding:calc(12px + var(--safe-top)) 10px 12px max(10px,var(--safe-left));display:flex;flex-direction:column;gap:2px}.rail .brand{display:flex;align-items:center;gap:8px;padding:6px 8px;margin-bottom:8px;font-weight:600;color:var(--text);letter-spacing:0}.rail .brand .mark{width:18px;height:18px;border-radius:5px;background:var(--accent);display:grid;place-items:center}.rail .brand .mark .ico{width:11px;height:11px;stroke:#fff;stroke-width:2.2}.rail .btn-upload{justify-content:flex-start;margin:0 0 10px;box-shadow:0 1px 1px #0000000a}.rail a.nav{display:flex;align-items:center;gap:9px;min-height:30px;padding:0 8px;border-radius:var(--radius);color:var(--text)}.rail a.nav .ico{color:var(--muted)}.rail a.nav.active{background:#ececef;font-weight:500}.rail a.nav.active .ico{color:var(--text)}.rail a.nav .count{margin-left:auto;font:11px var(--mono);color:var(--faint)}.rail a.nav .count.badge{background:var(--accent);color:#fff;border-radius:8px;padding:0 5px;font-weight:600}.rail a.sub{display:block;min-height:28px;line-height:28px;padding:0 8px 0 33px;border-radius:var(--radius);color:var(--muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail a.sub.active{color:var(--text);background:#ececef}.rail .more{padding:0 8px 0 33px;color:var(--faint);font-size:12px}.rail h6{margin:12px 8px 4px;font-size:11px;font-weight:500;color:var(--faint)}.rail .foot{margin-top:auto;padding:10px 8px 0;border-top:1px solid var(--line);font-size:11.5px;color:var(--muted)}.rail .foot .who{display:flex;align-items:center;gap:8px;margin-top:8px;min-width:0}.rail .foot .who>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{flex:1;min-width:0;display:flex;flex-direction:column}.quota{height:3px;background:#e1e1e5;border-radius:2px;margin:5px 0 4px;overflow:hidden}.quota>i{display:block;height:100%;background:var(--accent);border-radius:2px;min-width:2px}.tabbar{display:none}.topbar{position:sticky;top:0;z-index:20;background:var(--surface);border-bottom:1px solid var(--line);padding-top:var(--safe-top)}.topbar-inner{max-width:1120px;margin:0 auto;padding:0 max(var(--gutter),var(--safe-right)) 0 max(var(--gutter),var(--safe-left));min-height:48px;display:flex;align-items:center;gap:20px}.brand{font-weight:600;color:var(--text);white-space:nowrap}.topbar nav{display:flex;gap:14px;min-width:0}.topbar nav a{color:var(--muted);padding:4px 0;white-space:nowrap}.topbar nav a.active{color:var(--text);font-weight:500;box-shadow:inset 0 -2px 0 var(--accent)}.topbar .who{margin-left:auto;color:var(--muted);display:flex;gap:12px;align-items:center;min-width:0}.topbar .who>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}main.page{width:100%;max-width:1120px;margin:0 auto;padding:18px max(var(--gutter),var(--safe-right)) calc(64px + var(--safe-bottom)) max(var(--gutter),var(--safe-left))}.page-head{display:flex;align-items:center;gap:8px;min-height:36px;margin-bottom:14px;flex-wrap:wrap}.page-head .grow{flex:1}.page-head h1{margin:0;font-size:15px}.crumbs{display:flex;gap:6px;align-items:center;flex-wrap:wrap;color:var(--muted);min-width:0;font-size:14px}.crumbs a{color:var(--muted)}.crumbs .here{color:var(--text);font-weight:500}.crumbs>span:not(.here):not(.crumbs){color:var(--faint)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;min-width:0}.card+.card{margin-top:12px}.card>h2{margin-bottom:10px}.narrow{max-width:400px;margin:56px auto}.narrow h1{margin-bottom:16px;font-size:18px}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.list .group{display:flex;align-items:center;gap:8px;min-height:30px;padding:0 14px;background:var(--rail);border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.list .group b{font-weight:500;color:var(--text)}.list .group+.group{border-top:1px solid var(--line)}.item{display:flex;align-items:center;gap:10px;min-height:40px;padding:4px 14px;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:0}.item.pending{opacity:.55}.ring{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--ok);display:grid;place-items:center;flex:none}.ring:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok)}.ring.share{border-color:var(--share)}.ring.share:after{background:var(--share)}.ring.bad{border-color:var(--danger)}.ring.bad:after{background:var(--danger)}.ring.off{border-color:var(--line-strong)}.ring.off:after{background:var(--line-strong)}.ring.none{visibility:hidden}.tile{width:26px;height:26px;border-radius:5px;background:#f1f1f3;display:grid;place-items:center;color:var(--muted);flex:none}.tile .ico{width:15px;height:15px}.tile.folder{background:var(--accent-soft);color:var(--accent)}.tile.image{color:#2e8b57;background:#e9f5ee}.tile.video{color:#7c3aed;background:#f1ebfd}.tile.audio{color:#0e7490;background:#e6f4f7}.tile.pdf{color:#c2410c;background:#fdeee6}.tile.code{color:var(--accent);background:var(--accent-soft)}.tile.doc{color:#1d4ed8;background:#e8effd}.tile.archive{color:#92400e;background:#f8efe3}.tile.pic{background:#f1f1f3;overflow:hidden}.tile.pic img{width:100%;height:100%;object-fit:cover;display:block}.item .name{flex:1;min-width:0;display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text)}.item .name>a,.item .name>span.label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.item .name>a:hover{text-decoration:underline}.item .meta{color:var(--faint);font-size:12px;font-family:var(--mono);white-space:nowrap}.item .meta.size{min-width:60px;text-align:right}.item .meta.when{min-width:104px;text-align:right}.item .acts{display:flex;gap:4px;flex:none}.item .name .inline-form{flex:1}.item .name.stack{flex-direction:column;align-items:flex-start;gap:2px;font-weight:400}.item .name.stack small{color:var(--faint);font-size:12px;font-family:var(--mono)}dl.props{display:grid;grid-template-columns:minmax(72px,110px) minmax(0,1fr);gap:7px 12px;margin:0}dl.props dt{color:var(--muted)}dl.props dd{margin:0;min-width:0}.detail{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.detail .aside>.card+.card{margin-top:12px}.viewer{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-width:0}.viewer .vhead{display:flex;align-items:center;gap:8px;min-height:40px;padding:4px 12px;border-bottom:1px solid var(--line);background:var(--rail);font-size:12.5px;color:var(--muted);flex-wrap:wrap}.viewer .vhead .grow{flex:1}.viewer .vbody{min-height:240px;display:grid;place-items:center;background:#f4f4f6}.viewer .vbody.doc{display:block;place-items:normal;background:var(--surface)}.viewer .vbody>img{max-width:100%;max-height:min(70vh,720px);display:block;background:repeating-conic-gradient(#e6e6e8 0,#e6e6e8 25%,#fff 0,#fff 50%) 0 0 / 16px 16px}.viewer .vbody>video{max-width:100%;max-height:min(70vh,720px);display:block;background:#000;width:100%}.viewer .vbody>audio{width:min(100%,520px);margin:40px 20px}.viewer .vbody>iframe{width:100%;height:min(75vh,820px);border:0;display:block;background:#fff}.viewer .vbody>.stand{padding:40px 20px;text-align:center;color:var(--muted);max-width:420px}.viewer .vbody>.stand .tile{width:44px;height:44px;margin:0 auto 12px}.viewer .vbody>.stand .tile .ico{width:24px;height:24px}.viewer .vbody>.stand strong{color:var(--text);font-weight:500}.seg{display:inline-flex;background:#ececef;border-radius:var(--radius);padding:2px;gap:2px}.seg button{border:0;background:transparent;padding:2px 10px;border-radius:4px;color:var(--muted);cursor:pointer;min-height:24px}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 1px #0000000f}pre.code{margin:0;width:100%;padding:12px 0;font-family:var(--mono);font-size:12.5px;line-height:1.6;overflow:auto;max-height:min(75vh,820px);-moz-tab-size:4;tab-size:4;counter-reset:ln}pre.code>span{display:block;padding:0 16px 0 0;white-space:pre}pre.code>span:before{counter-increment:ln;content:counter(ln);display:inline-block;width:3.5em;margin-right:1.2em;padding-right:.6em;text-align:right;color:var(--faint);border-right:1px solid var(--line);user-select:none;-webkit-user-select:none}pre.code.wrap>span{white-space:pre-wrap}.table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table th,.table td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.table th{font-weight:500;color:var(--muted);font-size:12px;background:var(--rail);white-space:nowrap}.table tr:last-child td{border-bottom:0}.table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table td.actions{text-align:right;white-space:nowrap}.table td.actions .btn{margin-left:4px}.table .name{display:inline-flex;align-items:center;gap:8px}.table tr.pending{opacity:.55}.table.stack td:not(:first-child){white-space:nowrap}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.table-wrap>.table{border:0;border-radius:0;min-width:720px}.icon{width:16px;height:16px;display:inline-block;vertical-align:-3px;color:var(--muted)}.empty{padding:40px 20px;text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 10px;min-height:30px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);cursor:pointer;line-height:1.4;white-space:nowrap;text-decoration:none;font-weight:500;font-size:13px;box-shadow:0 1px 1px #00000008}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary .ico{stroke:#fff}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-link{border:0;background:none;color:var(--accent);padding:2px 4px;min-height:0;box-shadow:none}.btn-sm{padding:2px 8px;min-height:26px;font-size:12.5px}.btn-ghost{border-color:transparent;background:transparent;box-shadow:none;color:var(--muted)}.field{display:block;margin-bottom:12px;min-width:0}.field>span{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.input,select.input{width:100%;padding:6px 10px;min-height:34px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--text)}textarea.input{min-height:0;line-height:1.5;resize:vertical}select.input{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:30px;background:var(--surface) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5l3.5 3.5 3.5-3.5' fill='none' stroke='%236f6e77' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #dfe2f7}input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent);flex-shrink:0}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}.row .input{width:auto;flex:1;min-width:120px}.row>.field{margin-bottom:0}.inline-form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;max-width:100%}.inline-form .input{width:220px;padding:3px 8px;min-height:28px}.alt-links{display:flex;flex-wrap:wrap;gap:4px 0;margin-top:16px;color:var(--muted)}.alt-links a{padding:2px 0}.alt-links a+a:before{content:"・";color:var(--faint)}.error{color:var(--danger);margin:8px 0}.muted{color:var(--muted)}.notice{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:var(--radius);padding:10px 12px;margin:12px 0}.recovery-code{font-family:var(--mono);font-size:17px;letter-spacing:.06em;background:#f1f1f3;padding:12px;border-radius:var(--radius);user-select:all;-webkit-user-select:all;word-break:break-all}.url-box{font-family:var(--mono);font-size:12.5px;background:#f1f1f3;padding:10px;border-radius:var(--radius);word-break:break-all;user-select:all;-webkit-user-select:all}.status{display:inline-flex;align-items:center;gap:5px;padding:0 7px;min-height:20px;border-radius:4px;font-size:11.5px;background:#f1f1f3;color:var(--muted);white-space:nowrap;border:1px solid var(--line)}.status.ok{background:var(--ok-soft);color:#1f7a3a;border-color:#cdebd6}.status.bad{background:var(--danger-soft);color:var(--danger);border-color:#f5cfcb}.status.share{background:#e8f0fe;color:#1d4ed8;border-color:#cdddfb}.progress{height:6px;background:#e9e9ec;border-radius:999px;overflow:hidden}.progress>i{display:block;height:100%;background:var(--accent);transition:width .2s}.upload-item{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--surface);margin-bottom:10px}.upload-item .head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;flex-wrap:wrap}.upload-item .head .name{min-width:0}.dropzone{border:1.5px dashed var(--line-strong);border-radius:var(--radius);padding:36px 20px;text-align:center;background:var(--surface);color:var(--muted)}.dropzone.over{border-color:var(--accent);background:var(--accent-soft)}.tabs{display:flex;gap:2px;min-width:0}.tabs a{color:var(--muted);padding:4px 8px;white-space:nowrap;border-radius:var(--radius)}.tabs a.active{color:var(--text);font-weight:500;background:#ececef}.table tr.overdue td{background:var(--danger-soft)}.table.kv th{width:1%;white-space:nowrap}@media(hover:hover){a:hover{text-decoration:underline}.btn:hover:not(:disabled){background:#f4f4f6;text-decoration:none}.btn-primary:hover:not(:disabled){background:#4f5bc4}.btn-danger:hover:not(:disabled){background:#a5281f}.btn-link:hover:not(:disabled){background:none;text-decoration:underline}.btn-ghost:hover:not(:disabled){background:#ececef;color:var(--text)}.topbar nav a:hover,.tabs a:hover,.crumbs a:hover,.alt-links a:hover,.rail a:hover{text-decoration:none;color:var(--text)}.rail a.nav:hover,.rail a.sub:hover,.tabs a:hover{background:#ececef}.item:hover{background:#fafafa}.item .acts{opacity:0;transition:opacity .12s}.item:hover .acts,.item:focus-within .acts{opacity:1}}@media(pointer:coarse),(max-width:1024px){.btn{min-height:42px;padding:8px 14px;font-size:14px}.btn-sm{min-height:36px;padding:6px 12px;font-size:13.5px}.seg button{min-height:32px;padding:4px 12px}.input,select.input{font-size:16px;min-height:44px}.inline-form .input{min-height:40px}input[type=checkbox]{width:22px;height:22px}.topbar nav a,.tabs a,.alt-links a{padding-top:8px;padding-bottom:8px}.rail a.nav{min-height:38px}.rail a.sub{min-height:34px;line-height:34px}.dropzone .drop-hint{display:none}.item{min-height:48px}}@media(prefers-reduced-motion:reduce){.progress>i,.item .acts,.navbar .mid{transition:none}.overlay,.action-sheet,.alert,.sheet{animation:none}}@media(max-width:1024px){:root{--gutter: 20px;--rail-w: 208px}.detail{grid-template-columns:minmax(0,1fr)}.detail .aside{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.detail .aside>.card+.card{margin-top:0}}@media(max-width:900px){.topbar-inner{gap:16px}.topbar nav{gap:12px}}@media(max-width:640px){:root{--gutter: 16px}html,body{font-size:14px}.rail{display:none}main.page{padding-top:0;padding-bottom:calc(66px + var(--safe-bottom))}main.page>:first-child:not(.navbar){margin-top:calc(14px + var(--safe-top))}.navbar{position:sticky;top:0;z-index:25;display:grid;grid-template-columns:minmax(40px,1fr) auto minmax(40px,1fr);align-items:center;min-height:48px;margin:0 calc(-1 * var(--gutter));padding:var(--safe-top) 8px 0;background:#fcfcfce6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid transparent}.navbar.compact{border-bottom-color:var(--line)}.navbar .lead{justify-self:start;min-width:0}.navbar .mid{font-size:14px;font-weight:600;opacity:0;transition:opacity .15s;max-width:50vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.navbar.compact .mid{opacity:1}.navbar .trail{justify-self:end;display:flex;align-items:center;gap:2px}.navbar .back{display:inline-flex;align-items:center;gap:2px;min-height:44px;padding:0 8px 0 2px;color:var(--muted);font-size:14px;max-width:42vw;border-radius:var(--radius)}.navbar .back .ico{width:20px;height:20px;stroke-width:2}.navbar .back span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}h1.large{font-size:22px;font-weight:600;letter-spacing:-.01em;line-height:1.25;margin:6px 0 14px;overflow-wrap:anywhere}.barbtn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 8px;border:0;border-radius:var(--radius);background:none;color:var(--accent);font:inherit;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;white-space:nowrap}.barbtn .ico{width:20px;height:20px;stroke-width:1.8}.barbtn.bold{font-weight:600}.barbtn:disabled,.barbtn.off{color:var(--faint);pointer-events:none}.ig{margin:0 0 22px}.ig h6{margin:0 0 6px;padding:0 2px;font-size:12px;font-weight:500;color:var(--muted)}.igb{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.igf{margin:6px 0 0;padding:0 2px;font-size:12px;color:var(--muted)}.igp{padding:14px}.igp>p:last-child{margin-bottom:0}.irow{display:flex;align-items:center;min-height:46px;position:relative}.irow+.irow:before{content:"";position:absolute;left:14px;right:0;top:0;height:1px;background:var(--line)}.igb.icons>.irow+.irow:before{left:56px}.irow .hit{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 10px 8px 14px;color:var(--text);text-decoration:none;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.irow .hit.center{justify-content:center;color:var(--accent);font-weight:500}.irow .hit.danger{color:var(--danger)}.irow .hit .tile{width:30px;height:30px;border-radius:6px}.irow .hit .tile .ico{width:17px;height:17px}.irow .txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.irow .txt .t{font-size:14.5px;font-weight:500;line-height:1.35;overflow-wrap:anywhere}.irow .txt .s{font-size:12px;color:var(--faint);font-family:var(--mono);line-height:1.4;display:flex;flex-wrap:wrap;gap:3px 6px;align-items:center}.irow .txt .s.body{display:block;white-space:pre-wrap;margin-top:2px;font-family:var(--font);color:var(--muted);font-size:13px}.irow .txt .acts{display:flex;flex-wrap:wrap;gap:0 4px;margin:2px 0 -6px -10px}.irow .chev,.irow .check{color:var(--faint);width:18px;height:18px;stroke-width:2}.irow .check{color:var(--accent);stroke-width:2.2}.irow .trail{display:flex;align-items:center;padding-right:6px;flex:none}.irow .more{min-width:44px;min-height:44px;border:0;background:none;color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0;border-radius:var(--radius)}.irow .more .ico{width:20px;height:20px;stroke-width:1.7}.irow.kv{justify-content:space-between;gap:12px;padding:10px 14px}.irow.kv .k{font-size:13.5px;color:var(--muted);flex:none}.irow.kv .v{font-size:13.5px;color:var(--text);text-align:right;min-width:0;overflow-wrap:anywhere}.irow.kv .v .mono{font-size:12.5px}.irow .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-right:8px;vertical-align:1px}.irow .ring{margin-left:2px}.tbtn{border:0;background:none;color:var(--accent);font:inherit;font-size:13.5px;font-weight:500;min-height:44px;padding:0 10px;cursor:pointer;white-space:nowrap;border-radius:var(--radius)}.tbtn:disabled{color:var(--faint)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#282a3059;display:flex;align-items:flex-end;justify-content:center;animation:pv-fade .15s}.overlay.center{align-items:center;padding:0 16px}.action-sheet{width:100%;padding:8px 8px calc(8px + var(--safe-bottom));display:flex;flex-direction:column;gap:8px;animation:pv-rise .22s cubic-bezier(.2,.8,.2,1)}.action-sheet .group{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #0000001f}.action-sheet .title{padding:10px 14px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);overflow-wrap:anywhere}.action-sheet .act{display:flex;align-items:center;width:100%;min-height:46px;padding:0 14px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--text);font:inherit;font-size:14.5px;font-weight:500;cursor:pointer;text-decoration:none;text-align:left}.action-sheet .act:last-child{border-bottom:0}.action-sheet .act.danger{color:var(--danger)}.action-sheet .act:disabled{color:var(--faint)}.action-sheet .cancel{width:100%;min-height:46px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:14.5px;font-weight:500;cursor:pointer;box-shadow:0 8px 24px #0000001f}.alert{width:100%;max-width:360px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #00000029;overflow:hidden;margin:0;animation:pv-pop .16s}.alert .abody{padding:16px 16px 4px}.alert h2{font-size:15px;font-weight:600;margin:0 0 6px}.alert p{font-size:13px;color:var(--muted);margin:0 0 8px}.alert .input{margin-top:8px}.alert .abtns{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px 16px}.alert .abtns button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:6px 14px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:inherit;font-size:14px;font-weight:500;cursor:pointer}.alert .abtns button+button{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.alert .abtns button:disabled{opacity:.5;cursor:default}.sheet{width:100%;height:calc(100% - 24px - var(--safe-top));background:var(--bg);border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;display:flex;flex-direction:column;overflow:hidden;animation:pv-rise .28s cubic-bezier(.2,.8,.2,1)}.sheet .navbar{position:static;margin:0;padding-top:0;min-height:52px;background:var(--surface);border-bottom:1px solid var(--line)}.sheet .navbar.plain .mid{opacity:1}.sheet .body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px var(--gutter) calc(16px + var(--safe-bottom))}@keyframes pv-fade{0%{opacity:0}}@keyframes pv-rise{0%{transform:translateY(32px);opacity:0}}@keyframes pv-pop{0%{transform:scale(1.04);opacity:0}}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fcfcfcf0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:0 max(0px,var(--safe-right)) var(--safe-bottom) max(0px,var(--safe-left))}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;padding:6px 2px 4px;color:var(--muted);font-size:10.5px;font-weight:500;position:relative;border-radius:0}.tabbar a .ico{width:22px;height:22px;stroke-width:1.6}.tabbar a.active{color:var(--accent)}.tabbar a.active .ico{stroke-width:2}.tabbar a .badge{position:absolute;top:4px;left:calc(50% + 4px);background:var(--accent);color:#fff;border-radius:8px;min-width:16px;text-align:center;font-size:10px;font-weight:600;padding:0 4px;line-height:16px}form>.btn-primary{width:100%}.narrow{max-width:none;margin:0}.narrow h1{font-size:22px;margin:6px 0 16px}.empty{padding:40px 16px}.viewer{margin-bottom:22px}.viewer .vbody>iframe{height:65vh}.topbar-inner{flex-wrap:wrap;gap:0 12px;min-height:48px}.brand{flex:1;min-width:0;padding:12px 0}.topbar nav{order:3;flex-basis:100%;gap:0;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1*max(var(--gutter),var(--safe-right))) 0 calc(-1*max(var(--gutter),var(--safe-left)));padding:0 max(var(--gutter),var(--safe-right)) 0 max(var(--gutter),var(--safe-left));border-top:1px solid var(--line)}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a{padding:10px 12px}.topbar nav a:first-child{margin-left:-12px}.topbar nav:has(>a:only-child){order:0;flex-basis:auto;overflow:visible;margin:0;padding:0;border-top:0}.topbar nav:has(>a:only-child) a:first-child{margin-left:0}.topbar .who{gap:8px}.topbar .who>span{display:none}.page-head{gap:8px;margin-bottom:12px}.page-head h1{font-size:18px}.page-head .grow{flex-basis:100%;height:0}.page-head>.muted{flex-basis:100%}.inline-form{display:flex;width:100%}.inline-form .input{width:auto;flex:1 1 140px}.row>.field{flex:1 1 160px}.row>.btn{flex-shrink:0}.tabs{flex-basis:100%;gap:0;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter)}.tabs::-webkit-scrollbar{display:none}.tabs a{padding:8px 12px;border-radius:0}.tabs a.active{background:none;box-shadow:inset 0 -2px 0 var(--accent)}.tabs a:first-child{margin-left:-12px}dl.props{grid-template-columns:1fr;gap:2px 0}dl.props dt{font-size:12px}dl.props dd+dt{margin-top:8px}.dropzone{padding:24px 16px}.table-wrap{margin:0 calc(-1 * var(--gutter));border-radius:0;border-left:0;border-right:0}.detail .aside{grid-template-columns:1fr}.item{flex-wrap:wrap;gap:4px 8px;padding:10px 14px}.item .name{flex-basis:100%;order:0;font-size:14.5px}.item .name>a,.item .name>span.label{white-space:normal}.item .ring{order:1}.item .meta{order:2;font-size:12px;min-width:0;text-align:left}.item .meta.when:before{content:"・";color:var(--faint);margin:0 2px 0 0}.item .acts{order:3;flex-basis:100%;flex-wrap:wrap;gap:6px;margin-top:6px}.item .acts:empty{display:none}.item .tile{order:-1}.item .name{flex-basis:auto;flex:1 1 calc(100% - 44px)}.table.stack,.table.stack tbody{display:block}.table.stack thead{display:none}.table.stack tr{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;padding:12px 14px;border-bottom:1px solid var(--line)}.table.stack tr:last-child{border-bottom:0}.table.stack td{display:block;padding:0;border:0;min-width:0;text-align:left;white-space:normal}.table.stack td:first-child{flex-basis:100%;font-size:14.5px}.table.stack td:not(:first-child):not(.actions){font-size:12.5px;color:var(--muted)}.table.stack td.num.muted:not([data-label]){display:none}.table.stack td[data-label]:before{content:attr(data-label) " "}.table.stack td:empty{display:none}.table.stack td.actions{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.table.stack td.actions:empty{display:none}.table.stack td.actions .btn{margin-left:0}.table.stack .name{display:flex;align-items:flex-start}.table.stack .icon{margin-top:3px}.table.stack tr.overdue{background:var(--danger-soft)}.table.kv,.table.kv tbody{display:block}.table.kv tr{display:block;padding:8px 12px;border-bottom:1px solid var(--line)}.table.kv tr:last-child{border-bottom:0}.table.kv th,.table.kv td{display:block;padding:0;border:0;background:none;width:auto;white-space:normal}}@media(max-width:380px){.btn{padding-left:12px;padding-right:12px}}
