@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);--surface-0: #eaeff4;--surface-1: #ffffff;--surface-2: #f5f8fb;--surface-ink: #0a1c2e;--ink: #0a1c2e;--ink-2: #1b3a57;--muted: #5b7590;--muted-2: #93a6b8;--line: #e3eaf1;--line-strong: #cbd8e4;--accent: #0f6ca8;--accent-hover: #0b527f;--accent-soft: #eaf3fa;--accent-line: #cbe2f2;--warm: #de7b14;--warm-deep: #a35606;--warm-soft: #fff7ec;--warm-line: #f0d3a8;--ok: #157f55;--ok-soft: #e7f4ee;--ok-line: #c2e2d1;--danger: #c0392f;--danger-soft: #fdeeec;--danger-line: #f2ccc8;--t-xs: 11px;--t-sm: 12px;--t-base: 13px;--t-md: 14px;--t-lg: 16px;--t-xl: 20px;--t-2xl: 28px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-full: 999px;--sh-1: 0 1px 2px rgba(10, 28, 46, .05);--sh-2: 0 1px 2px rgba(10, 28, 46, .05), 0 10px 24px -12px rgba(10, 28, 46, .22);--sh-3: 0 24px 56px -16px rgba(10, 28, 46, .34);--ring: 0 0 0 3px rgba(15, 108, 168, .18);--font: "IBM Plex Sans", "Hiragino Sans", "Yu Gothic UI", "Noto Sans JP", system-ui, -apple-system, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ground: radial-gradient(1200px 520px at 100% -10%, rgba(255, 255, 255, .85), transparent 62%), radial-gradient(900px 600px at -10% 110%, rgba(203, 226, 242, .55), transparent 60%), linear-gradient(180deg, #edf1f5 0%, #e6ecf1 100%);--steel-ink: repeating-linear-gradient(112deg, rgba(255, 255, 255, .045) 0 1px, transparent 1px 9px), linear-gradient(90deg, #0a1c2e 0%, #10293f 60%, #0c2237 100%);--cold-grad: linear-gradient(150deg, #38a6e4, #0b527f)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:var(--font);font-feature-settings:"palt" 1;background:var(--surface-0);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:var(--t-base);line-height:1.7;letter-spacing:.005em;font-variant-numeric:tabular-nums}button,input,textarea,select{font-family:inherit;font-feature-settings:"palt" 1;color:inherit}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-sm)}::selection{background:var(--accent-soft)}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.shell{height:100%;display:flex;flex-direction:column;background:var(--surface-0)}.shell{height:100dvh}.appbar{display:flex;align-items:center;gap:var(--s3);padding:0 var(--s4);height:56px;background:var(--steel-ink);color:#fff;flex:none;box-shadow:inset 0 -1px #ffffff14,0 1px #0a1c2e40;position:relative;z-index:2}.appbar-mk{display:grid;place-items:center;flex:none}.appbar-mk img{display:block}.appbar-name{line-height:1}.appbar-name svg{display:block;color:#fff}.appbar-nav{margin-left:var(--s4);display:flex;gap:2px;padding:3px;border-radius:var(--r-full);background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff0f}.appbar-nav button{white-space:nowrap;background:none;border:none;color:#a9c0d4;font-size:var(--t-sm);font-weight:500;padding:5px var(--s3);border-radius:var(--r-full);cursor:pointer;transition:background .15s,color .15s;line-height:1.4}@media (hover: hover){.appbar-nav button:hover{color:#fff}}.appbar-nav button.on{background:#ffffff24;color:#fff;font-weight:600;box-shadow:0 1px 2px #00000040;cursor:default}.appbar-right{margin-left:auto;display:flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:#c6d8e6}.appbar-user{display:flex;flex-direction:column;line-height:1.25;margin-right:var(--s1)}.appbar-user small{font-size:10px;color:#83a0ba;letter-spacing:.04em}.appbar-face{width:26px;height:26px;border-radius:var(--r-full);background:#23445f;display:grid;place-items:center;font-size:var(--t-xs);font-style:normal;color:#d6e6f2;font-weight:600;flex:none}.appbar-link{background:none;border:none;color:#b4cade;font-size:var(--t-sm);cursor:pointer;padding:var(--s1) var(--s3);border-radius:var(--r-full);white-space:nowrap;transition:background .15s,color .15s}@media (hover: hover){.appbar-link:hover{background:#ffffff1a;color:#fff}}.appbar-tix,.appbar-notice{display:none;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.25);background:#ffffff1a;color:#fff;border-radius:var(--r-full);padding:4px 10px;font:inherit;font-size:var(--t-xs);cursor:pointer}.appbar-tix em,.appbar-notice em{font-style:normal;font-family:var(--mono);font-size:10px;background:var(--accent);color:#fff;border-radius:var(--r-full);padding:0 6px;line-height:16px}.appbar-new{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.25);background:#ffffff1a;color:#fff;border-radius:var(--r-full);padding:4px 10px 4px 8px;font:inherit;font-size:var(--t-xs);font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}@media (hover: hover){.appbar-new:hover{background:#ffffff2e}}.body{flex:1;display:flex;min-height:0}.rail{flex:0 0 236px;background:var(--surface-1);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:var(--s3) 0 0;min-height:0}.rail-scroll{flex:1;overflow-y:auto;min-height:0;padding-bottom:var(--s3)}.rail-sec{font-size:var(--t-xs);font-weight:600;letter-spacing:.12em;color:var(--muted-2);padding:0 var(--s4) var(--s2)}.rail-list{list-style:none;margin:0 var(--s2) var(--s5);padding:0}.rail-list li{display:flex;align-items:center;gap:var(--s2);padding:var(--s1) var(--s2);border-radius:var(--r-sm);font-size:var(--t-sm);color:var(--ink-2);line-height:1.5;transition:background .14s}@media (hover: hover){.rail-list li:hover{background:var(--surface-2)}}.rail-list li.sel{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.rail-list li button{flex:1;text-align:left;background:none;border:none;padding:var(--s1) 0;cursor:pointer;font-size:var(--t-sm);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (hover: hover){.rail-list li:hover button{color:var(--accent-hover)}}.rail-list li b{font-family:var(--mono);font-size:var(--t-xs);color:var(--muted-2);font-weight:500;font-variant-numeric:tabular-nums}.rail-empty{padding:0 var(--s4) var(--s4);font-size:var(--t-sm);color:var(--muted-2);line-height:1.6}.rail-chip{font-size:var(--t-xs);padding:1px var(--s2);border-radius:var(--r-full);font-style:normal;background:var(--surface-2);color:var(--muted);border:1px solid var(--line);white-space:nowrap;font-weight:500}.rail-foot{margin-top:auto;border-top:1px solid var(--line);padding:var(--s3) var(--s3) var(--s4);background:var(--surface-2);flex:none}.rail-foot .rail-foot-l{padding:0 var(--s1)}.rail-foot .rail-who{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3);box-shadow:var(--sh-1)}.rail-foot .rail-who.none{background:transparent;border-style:dashed;border-color:var(--line-strong);box-shadow:none}.rail-who.none .rail-face{color:var(--muted-2);border-style:dashed}.rail-who.none .rail-nm{color:var(--muted);white-space:normal;line-height:1.45}.rail-who.none .rail-st{white-space:normal}.rail-foot-l{font-size:var(--t-xs);font-weight:600;letter-spacing:.12em;color:var(--muted-2);margin-bottom:var(--s3)}.rail-who{display:flex;align-items:center;gap:var(--s3)}.rail-face{width:34px;height:34px;border-radius:var(--r-full);background:linear-gradient(150deg,#f4f8fb,#e2ebf3);border:1px solid var(--line-strong);color:var(--ink-2);display:grid;place-items:center;font-size:var(--t-base);font-weight:600;flex:none}.rail-nm{font-size:var(--t-sm);font-weight:600;line-height:1.4}.rail-st{font-size:var(--t-xs);color:var(--ok);display:flex;align-items:center;gap:var(--s1);line-height:1.4;font-weight:500}.rail-st i{width:6px;height:6px;border-radius:var(--r-full);background:var(--ok);display:block;box-shadow:0 0 0 3px #157f5524}.rail-st.away{color:var(--muted)}.rail-st.away i{background:var(--muted-2);box-shadow:none}.rail-st.busy{color:var(--accent-hover)}.rail-st.busy i{background:var(--accent);box-shadow:0 0 0 3px #0f6ca829}.appbar-notice{display:inline-flex}.np-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}.np-n{font-family:var(--mono);font-size:var(--t-xs);font-weight:600;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-full);padding:0 var(--s2);line-height:1.7}.np-send{margin-left:auto;display:inline-flex;align-items:center;gap:var(--s1);background:var(--accent);color:#fff;border:0;border-radius:var(--r-full);padding:var(--s1) var(--s3) var(--s1) var(--s2);font:inherit;font-size:var(--t-sm);font-weight:600;line-height:1.6;cursor:pointer}@media (hover: hover){.np-send:hover{background:var(--accent-hover)}}.tp-h .np-send+.tp-x{margin-left:0}.np-groups{display:flex;flex-direction:column;gap:var(--s4)}.np-sec{margin:0 0 var(--s2);font-family:var(--mono);font-size:var(--t-xs);font-weight:600;letter-spacing:.12em;color:var(--muted-2)}.np-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s2)}.np-card{display:flex;flex-direction:column;width:100%;padding:var(--s3);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);text-align:left;font:inherit;color:var(--ink);cursor:pointer}@media (hover: hover){.np-card:hover{border-color:var(--line-strong);box-shadow:var(--sh-2)}}.np-card-unread{border-color:var(--accent-line);box-shadow:0 10px 24px -18px #0f6ca88c}.np-card-h{display:flex;align-items:flex-start;gap:var(--s2)}.np-card-t{flex:1;min-width:0;overflow-wrap:anywhere;font-size:var(--t-base);font-weight:500;color:var(--ink-2);line-height:1.45}.np-card-unread .np-card-t{font-weight:700;color:var(--ink)}.np-tag{flex:none;margin-top:1px;padding:0 var(--s1);border-radius:var(--r-sm);background:var(--accent);color:#fff;font-size:var(--t-xs);font-weight:600;line-height:1.6}.np-card-p{margin-top:var(--s1);font-size:var(--t-sm);color:var(--muted);line-height:1.55;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1}.np-card-unread .np-card-p{-webkit-line-clamp:2;line-clamp:2}.np-card-m{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2);font-size:var(--t-xs);color:var(--muted-2);line-height:1.7}.np-tm{font-family:var(--mono);font-weight:500}.np-by{color:var(--muted)}.np-chip{padding:0 var(--s2);border:1px solid var(--line-strong);border-radius:var(--r-full);color:var(--muted);background:var(--surface-1)}.np-rd{margin-left:auto;display:flex;align-items:center;gap:var(--s1);font-family:var(--mono);color:var(--muted)}.np-bar{display:block;flex:none;width:44px;height:4px;border-radius:2px;background:var(--line);overflow:hidden}.np-bar b{display:block;height:100%;background:var(--accent)}.np-empty{margin:var(--s4) 0;color:var(--muted);font-size:var(--t-sm)}.np-foot{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line)}.np-settings{background:none;border:0;padding:0;color:var(--accent);font:inherit;font-size:var(--t-sm);cursor:pointer}.np-body{padding:var(--s2) 0}.np-title{margin:0 0 var(--s3);font-size:var(--t-lg);line-height:1.45;color:var(--ink)}.np-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2);padding-bottom:var(--s3);border-bottom:1px solid var(--line);font-size:var(--t-xs);color:var(--muted)}.np-when{margin-left:auto;font-family:var(--mono);color:var(--muted-2)}.np-text{margin:var(--s3) 0 0;white-space:pre-wrap;word-break:break-word;line-height:1.8;font-size:var(--t-sm);color:var(--ink-2)}.np-text a{color:var(--accent);word-break:break-all}.np-read{margin-top:var(--s4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);overflow:hidden}.np-read-b{display:flex;align-items:center;gap:var(--s2);width:100%;padding:var(--s3);background:none;border:0;font:inherit;font-size:var(--t-xs);color:var(--muted);text-align:left;cursor:pointer}@media (hover: hover){.np-read-b:hover{background:var(--accent-soft)}}.np-read-n{font-family:var(--mono);font-size:var(--t-sm);font-weight:600;color:var(--ink)}.np-read-bar{display:block;flex:1;min-width:32px;height:5px;border-radius:3px;background:var(--line);overflow:hidden}.np-read-bar b{display:block;height:100%;background:var(--accent)}.np-read-rest{flex:none}.np-read-caret{flex:none;display:inline-flex;color:var(--muted-2);transition:transform .15s ease}.np-read-b[aria-expanded=true] .np-read-caret{transform:rotate(180deg)}.np-readers{list-style:none;margin:0;padding:var(--s1) var(--s3) var(--s3);border-top:1px solid var(--line)}.np-readers-note{padding:var(--s2) 0;font-size:var(--t-sm);color:var(--muted)}.np-reader{display:grid;grid-template-columns:1fr auto;gap:0 var(--s2);align-items:baseline;padding:var(--s2) 0;border-bottom:1px solid var(--line)}.np-reader:last-child{border-bottom:0}.np-reader-n{font-size:var(--t-sm);font-weight:500;color:var(--ink-2)}.np-reader-del{margin-left:var(--s1);font-size:var(--t-xs);font-weight:400;color:var(--muted-2)}.np-reader-d{font-size:var(--t-xs);color:var(--muted-2)}.np-reader-r{justify-self:end;font-family:var(--mono);font-size:var(--t-xs);color:var(--muted)}.np-reader-r-yet{font-family:var(--font);font-weight:600;color:var(--accent)}.np-reader-p{justify-self:end;font-size:var(--t-xs);line-height:1.7}.np-reader-p-ok{color:var(--muted-2)}.np-reader-p-mute{padding:0 var(--s2);border:1px solid var(--line-strong);border-radius:var(--r-full);color:var(--muted)}.np-reader-p-bad{padding:0 var(--s2);border:1px solid var(--danger-line);border-radius:var(--r-full);background:var(--danger-soft);color:var(--danger)}.np-del{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line)}.np-del-b{background:none;border:1px solid var(--line-strong);border-radius:var(--r-full);padding:var(--s1) var(--s3);font:inherit;font-size:var(--t-sm);color:var(--muted);cursor:pointer}.np-del-b:disabled{opacity:.6;cursor:default}@media (hover: hover){.np-del-b:hover:not(:disabled){border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger)}}.nc{display:flex;flex-direction:column;gap:var(--s4)}.nc-f{display:flex;flex-direction:column;gap:var(--s2)}.nc .error{margin-bottom:0}.nc-lab{display:flex;align-items:baseline;font-size:var(--t-sm);font-weight:600;color:var(--ink-2)}.nc-n{margin-left:auto;font-family:var(--mono);font-size:var(--t-xs);font-weight:500;color:var(--muted-2)}.nc-n.nc-n-over{color:var(--danger);font-weight:700}.nc-seg button{flex:1}.nc input[type=text],.nc input[type=search],.nc textarea{width:100%;font:inherit;font-size:var(--t-md);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:9px var(--s3);background:var(--surface-1);color:var(--ink);transition:border-color .14s,box-shadow .14s}.nc textarea{min-height:128px;line-height:1.7;resize:vertical}.nc input:focus,.nc textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.nc-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.nc-chips-box{max-height:34dvh;overflow:auto;overscroll-behavior:contain;padding:var(--s2);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.nc-chip{display:inline-flex;align-items:center;gap:var(--s1);padding:6px var(--s3);border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface-1);color:var(--ink-2);font:inherit;font-size:var(--t-sm);line-height:1.5;cursor:pointer}@media (hover: hover){.nc-chip:hover{border-color:var(--accent-line)}}.nc-chip.nc-chip-on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent);font-weight:600}.nc-chip-n{font-family:var(--mono);font-size:var(--t-xs);color:var(--muted)}.nc-chip.nc-chip-on .nc-chip-n{color:var(--accent)}.nc-chip:disabled{opacity:.45;cursor:default}.nc-pick{display:flex;flex-direction:column;gap:var(--s2)}.nc-picked,.nc-none,.nc-loading{font-size:var(--t-sm);color:var(--muted)}.nc-picked{font-size:var(--t-xs)}.nc-loading{margin:0}.nc-limit{width:100%;font-size:var(--t-xs);color:var(--muted-2)}.nc-sum{background:var(--surface-2);border-radius:var(--r-md);padding:var(--s3) var(--s4);font-size:var(--t-sm);color:var(--muted);line-height:1.6}.nc-sum b{font-family:var(--mono);font-size:var(--t-md);color:var(--ink)}.nc-sum-sub{display:block}.nc-warn{margin:0;font-size:var(--t-xs);color:var(--muted-2);text-align:center;line-height:1.6}.nc-foot{flex:none;padding:var(--s3) var(--s4);border-top:1px solid var(--line);background:var(--surface-1)}.nc-send{width:100%;min-height:46px;font-size:var(--t-md)}@media (hover: none) and (pointer: coarse){.nc input[type=text],.nc input[type=search]{min-height:44px}.nc-chip{min-height:40px;font-size:var(--t-base)}}.rail-notice{margin:0 var(--s2) var(--s2);font-size:var(--t-xs);color:var(--accent);background:none;border:0;cursor:pointer;font:inherit;padding:0 var(--s2)}.notice-strip{display:flex;align-items:center;gap:var(--s2);width:100%;padding:8px var(--s4);border:0;border-top:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent-hover);font:inherit;font-size:var(--t-xs);font-weight:600;text-align:left;cursor:pointer}.notice-strip-go{margin-left:auto;font-weight:400}.ask-strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);border-top:1px solid var(--accent-line);background:var(--accent-soft);color:var(--ink-2);font-size:var(--t-sm)}.ask-strip>span{flex:1 1 auto}.ask-strip.ask-strip-done{color:var(--accent-hover);font-weight:600}.duty{display:none;align-items:center;gap:var(--s2);padding:6px var(--s4);background:var(--surface-1);border-top:1px solid var(--line);font-size:var(--t-xs);color:var(--muted)}.duty-btn{width:100%;border-left:0;border-right:0;border-bottom:0;text-align:left;font-family:inherit;line-height:inherit;cursor:pointer}.duty-l{flex:none;margin-right:var(--s1)}.duty-face{width:20px;height:20px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:600;font-size:10px;flex:none}.duty-nm{font-weight:600;color:var(--ink-2)}.duty-st{margin-left:auto;display:flex;align-items:center;gap:4px}.duty-st i{width:6px;height:6px;border-radius:50%;background:var(--ok)}.duty-st.duty-st-busy i{background:var(--accent)}.duty-st.duty-st-away i{background:var(--muted-2)}.main{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--ground)}.chat{flex:1;overflow-y:auto;padding:var(--s5) var(--s5) var(--s2);scrollbar-width:thin;display:flex;flex-direction:column}.chat>*{flex:none}.chat.chat-empty{justify-content:center}.chat::-webkit-scrollbar{width:10px}.chat::-webkit-scrollbar-thumb{background:#c3d2df;border-radius:var(--r-full);border:3px solid var(--surface-0)}.chat-tools{position:sticky;top:0;z-index:1;display:flex;justify-content:flex-end;pointer-events:none}.chat-clear{font:inherit;font-size:var(--t-xs);color:var(--muted);background:var(--surface-0);border:1px solid var(--line);border-radius:var(--r-full);cursor:pointer;padding:2px var(--s3);margin-bottom:var(--s2);pointer-events:auto}.home{padding:var(--s5) var(--s5) var(--s6);width:min(760px,100%);margin:0 auto;animation:rise .34s cubic-bezier(.2,.8,.3,1) both}.home-hi{font-size:var(--t-sm);color:var(--muted);letter-spacing:.08em;margin-bottom:var(--s3);display:flex;align-items:center;gap:var(--s2)}.home-hi:before{content:"";width:22px;height:2px;border-radius:2px;background:var(--accent)}.home-q{font-size:34px;font-weight:700;letter-spacing:-.02em;margin:0 0 var(--s3);line-height:1.25}.home-sub{font-size:var(--t-md);color:var(--muted);margin:0 0 var(--s6);line-height:1.9}.home-lab{font-size:var(--t-xs);font-weight:600;letter-spacing:.12em;color:var(--muted-2);margin-bottom:var(--s3)}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3)}.tile{display:flex;align-items:center;gap:var(--s3);text-align:left;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s4);cursor:pointer;box-shadow:var(--sh-1);transition:border-color .16s,box-shadow .16s,transform .16s}@media (hover: hover){.tile:hover{border-color:var(--accent-line);box-shadow:var(--sh-2);transform:translateY(-1px)}}.tile .ti{width:40px;height:40px;border-radius:var(--r-md);background:linear-gradient(150deg,#eef5fb,#dbe8f3);box-shadow:inset 0 0 0 1px #0f6ca81f;display:grid;place-items:center;flex:none;color:var(--accent-hover);transition:background .16s,color .16s}@media (hover: hover){.tile:hover .ti{background:var(--cold-grad);color:#fff;box-shadow:none}}.tile-t{font-size:var(--t-md);font-weight:600;line-height:1.4}.tile-d{font-size:var(--t-sm);color:var(--muted);line-height:1.5}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.qb{width:min(760px,100%);margin:0 auto var(--s4);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-2);overflow:hidden;animation:rise .3s ease both;transition:box-shadow .3s ease;scroll-margin-top:var(--s5)}.qb.qb-flash{box-shadow:0 0 0 3px var(--accent-line),var(--sh-2)}.qb-h{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);background:var(--surface-2);border-bottom:1px solid var(--line)}.qb-no{font-family:var(--mono);font-size:var(--t-xs);font-weight:600;color:var(--muted)}.qb-time{font-family:var(--mono);font-size:var(--t-xs);color:var(--muted-2)}.qb-cat{margin-left:auto;font-size:var(--t-xs);padding:1px var(--s2);border-radius:var(--r-full);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-hover);font-weight:600}.qb-q{width:100%;text-align:left;border:none;background:none;padding:var(--s3) var(--s4) var(--s2);font:inherit;font-size:var(--t-lg);font-weight:600;line-height:1.45;color:var(--ink);cursor:pointer}.qb-q-t{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.qb.qb-q-open .qb-q-t{display:block;-webkit-line-clamp:unset}.qb-b{padding:0 var(--s4) var(--s3);display:flex;flex-direction:column;gap:var(--s3)}.qb-skel{display:grid;gap:8px;padding:var(--s2) 0}.qb-skel i{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--line) 0%,var(--surface-2) 50%,var(--line) 100%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.qb-skel i:nth-child(2){width:85%}.qb-skel i:nth-child(3){width:60%}.qb-none{margin:0;font-size:var(--t-md);color:var(--ink-2);line-height:1.7}.qb .faq{max-width:100%;border:none;border-radius:0;box-shadow:none;background:none}.qb .faq-h{padding:0 0 var(--s2)}.qb .faq-b{padding:0}.qb .sum{border:1px solid var(--accent-line);border-radius:var(--r-md)}.qb .sum.sum-none{border-width:0}.qb-esc{position:relative;background:linear-gradient(180deg,#fffcf6 0%,var(--warm-soft) 100%);border:1px solid var(--warm-line);border-radius:var(--r-md);box-shadow:0 1px 2px #a3560612,0 16px 34px -16px #a3560666}.qb-esc-h{display:flex;align-items:center;gap:var(--s3);padding:var(--s4) var(--s5) var(--s3)}.qb-esc-h .qb-esc-pulse{width:8px;height:8px;border-radius:var(--r-full);background:var(--warm);flex:none;box-shadow:0 0 0 4px #de7b142e;animation:beat 2.4s ease-in-out infinite}@keyframes beat{0%,to{box-shadow:0 0 0 4px #de7b142e}50%{box-shadow:0 0 0 7px #de7b140f}}.qb-esc-h b{font-size:var(--t-lg);font-weight:600;letter-spacing:-.005em}.qb-esc-b{padding:0 var(--s5) var(--s5)}.qb-esc-who{display:flex;align-items:center;gap:var(--s3);background:var(--surface-1);border:1px solid var(--warm-line);border-radius:var(--r-md);padding:var(--s3);margin-bottom:var(--s3)}.qb-esc-face{width:40px;height:40px;border-radius:var(--r-full);background:linear-gradient(150deg,#fbe3c4,#f3cd9c);color:var(--warm-deep);display:grid;place-items:center;font-size:var(--t-md);font-weight:600;flex:none}.qb-esc-nm{font-size:var(--t-md);font-weight:600;line-height:1.4}.qb-esc-st{font-size:var(--t-sm);color:var(--warm-deep);line-height:1.4;display:flex;align-items:center;gap:var(--s1);font-weight:500}.qb-esc-st i{width:6px;height:6px;border-radius:var(--r-full);background:var(--warm);display:block}.qb-esc-msg{font-size:var(--t-base);line-height:1.85;color:var(--ink-2)}.qb-esc-slip{display:flex;position:relative;margin:var(--s5) calc(var(--s5) * -1) 0;padding:var(--s5) var(--s5) 0;border-top:1px dashed var(--warm-line)}.qb-esc-slip:before,.qb-esc-slip:after{content:"";position:absolute;top:-9px;width:18px;height:18px;border-radius:var(--r-full);background:var(--surface-1);border:1px solid var(--warm-line)}.qb-esc-slip:before{left:-10px;clip-path:inset(0 0 0 50%)}.qb-esc-slip:after{right:-10px;clip-path:inset(0 50% 0 0)}.qb-esc-cell{flex:1;padding-right:var(--s2);min-width:0}.qb-esc-cell+.qb-esc-cell{padding-left:var(--s2);border-left:1px solid rgba(222,123,20,.2)}.qb-esc-cell:first-child{flex:1.6}.qb-esc-cl{font-size:9.5px;letter-spacing:.14em;color:var(--warm-deep);font-weight:600;margin-bottom:2px;opacity:.75}.qb-esc-cv{font-family:var(--mono);font-size:var(--t-md);font-weight:600;letter-spacing:.02em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qb-esc-cell:first-child .qb-esc-cv{font-size:var(--t-xl);letter-spacing:.01em}.qb-esc-note{margin-top:var(--s3);font-size:var(--t-sm);color:var(--warm-deep);line-height:1.7}.qb-esc-min{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--warm-deep);background:var(--warm-soft);border:1px solid var(--warm-line);border-radius:var(--r-md);padding:var(--s2) var(--s3)}.qb-esc-min i{width:8px;height:8px;border-radius:50%;background:var(--warm);flex:none}.qb-ans{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-md);padding:var(--s3) var(--s4);animation:rise .3s ease both}.qb-ans-h{font-size:var(--t-sm);font-weight:600;color:var(--accent);margin-bottom:var(--s1)}.qb-ans-b{font-size:var(--t-md);line-height:1.8;white-space:pre-wrap;color:var(--ink)}.qb-ans-n{margin-top:var(--s2);font-size:var(--t-xs);color:var(--muted)}.qb-f{padding:var(--s3) var(--s4);background:var(--surface-2);border-top:1px solid var(--line);display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap}.qb-f-q{font-size:var(--t-sm);color:var(--muted);margin-right:auto}.faq{max-width:86%;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--s1) var(--r-lg) var(--r-lg) var(--r-lg);overflow:hidden;box-shadow:var(--sh-2);transition:box-shadow .3s ease}.sum{display:grid;grid-template-rows:1fr;background:var(--accent-soft);border-bottom:1px solid var(--accent-line);transition:grid-template-rows .22s ease,opacity .22s ease}.sum.sum-none{grid-template-rows:0fr;opacity:0;border-bottom-width:0}.sum-in{min-height:0;overflow:hidden;padding:var(--s3) var(--s5);transition:padding .22s ease}.sum.sum-none .sum-in{padding-top:0;padding-bottom:0}.sum-h{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-xs);font-weight:600;letter-spacing:.04em;color:var(--accent);margin-bottom:var(--s2)}.sum-h:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.sum.sum-pending .sum-h:before{animation:sum-pulse 1.2s ease-in-out infinite}.sum-skel{display:grid;gap:6px;min-height:30px}.sum-skel i{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--accent-line) 0%,var(--surface-1) 50%,var(--accent-line) 100%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.sum-skel i:last-child{width:70%}.sum-i{margin:0 0 var(--s1);font-size:var(--t-md);line-height:1.7;color:var(--ink);animation:sum-rise .18s ease-out both}.sum-ref{display:inline-block;margin-left:var(--s1);padding:0 6px;font-family:var(--mono);font-size:10px;line-height:16px;border-radius:var(--r-full);border:1px solid var(--accent-line);background:var(--surface-1);color:var(--accent-hover);cursor:pointer;vertical-align:middle}@media (hover: hover){.sum-ref:hover{border-color:var(--accent)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes sum-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes sum-pulse{0%,to{opacity:1}50%{opacity:.3}}.faq-h{padding:var(--s4) var(--s5) var(--s3)}.faq-tag{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--mono);font-size:var(--t-xs);letter-spacing:.08em;color:var(--accent);margin-bottom:var(--s2);font-weight:500}.faq-tag:before{content:"";width:16px;height:2px;border-radius:2px;background:var(--accent)}.faq-src{display:inline-block;font-family:var(--font);font-size:var(--t-xs);letter-spacing:.04em;padding:1px var(--s2);border-radius:var(--r-full);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-hover);font-weight:600}.faq-src.faq-src-sm{margin-right:var(--s2);font-size:10px;padding:0 6px}.faq-t{font-size:var(--t-lg);font-weight:600;line-height:1.5;letter-spacing:-.005em}.faq-b{padding:0 var(--s5) var(--s4)}.faq-body{margin:0;font-size:var(--t-md);line-height:1.95;white-space:pre-wrap;word-break:break-word;color:var(--ink-2)}.faq-field+.faq-field{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.faq-field-l{font-size:var(--t-xs);letter-spacing:.08em;color:var(--muted);font-weight:600;margin-bottom:2px}.atts{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s4)}.att{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);border:1px solid var(--line-strong);background:var(--surface-1);border-radius:var(--r-sm);padding:6px var(--s3);color:var(--accent-hover);cursor:pointer;text-decoration:none;font-weight:500;transition:background .14s,border-color .14s}@media (hover: hover){.att:hover{background:var(--accent-soft);border-color:var(--accent-line)}}.mini{font-size:var(--t-sm);padding:7px var(--s3);border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface-1);color:var(--ink-2);cursor:pointer;font-weight:500;transition:background .14s,border-color .14s}@media (hover: hover){.mini:hover:not(:disabled){border-color:var(--accent-line);background:var(--accent-soft)}}.mini.pri{background:var(--ink-2);border-color:var(--ink-2);color:#fff}@media (hover: hover){.mini.pri:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}}.mini:disabled{opacity:.4;cursor:default}.faq-alt{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line)}.faq-alt-l{font-size:var(--t-xs);font-weight:600;letter-spacing:.1em;color:var(--muted-2);margin-bottom:var(--s2)}.faq-alt button{display:block;background:none;border:none;padding:var(--s1) 0;font-size:var(--t-sm);color:var(--accent-hover);cursor:pointer;text-align:left}@media (hover: hover){.faq-alt button:hover{text-decoration:underline}}.compose{flex:none;border-top:1px solid var(--line);background:var(--surface-1);padding:var(--s3) var(--s5) var(--s4)}.inputline{display:flex;gap:var(--s3);align-items:center}.inputline input{flex:1;font-size:var(--t-md);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--r-full);padding:11px var(--s5);background:var(--surface-1);transition:border-color .14s,box-shadow .14s}.inputline input::placeholder{color:var(--muted-2)}.inputline input:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.send{width:42px;height:42px;border-radius:var(--r-full);border:none;background:var(--accent);display:grid;place-items:center;cursor:pointer;flex:none;box-shadow:0 2px 8px -2px #0b527f99;transition:background .15s,transform .08s}@media (hover: hover){.send:hover:not(:disabled){background:var(--accent-hover)}}.send:active:not(:disabled){transform:scale(.94)}.send:disabled{opacity:.35;cursor:default;box-shadow:none}.quota{font-size:var(--t-xs);color:var(--muted-2);margin-top:var(--s2);text-align:right}.compose-hint{font-size:var(--t-xs);color:var(--muted-2);margin:var(--s2) 2px 0}.toasts{position:fixed;right:var(--s5);bottom:var(--s5);z-index:60;display:grid;gap:var(--s3);width:340px;max-width:calc(100vw - var(--s6))}.toast{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-3);padding:var(--s4);transform:translate(24px);opacity:0;animation:slidein .36s cubic-bezier(.2,.85,.3,1) forwards}@keyframes slidein{to{transform:none;opacity:1}}.toast-h{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s2)}.toast-h .mk{display:grid;place-items:center;flex:none}.toast-h b{font-size:var(--t-xs);color:var(--muted);font-weight:600;letter-spacing:.08em}.toast-h .x{margin-left:auto;color:var(--muted-2);font-size:var(--t-sm);cursor:pointer;line-height:1;background:none;border:none;padding:var(--s1)}.toast-t{font-size:var(--t-md);font-weight:600;line-height:1.5;margin-bottom:2px}.toast-d{font-size:var(--t-sm);color:var(--muted);line-height:1.65;white-space:pre-line}.toast-a{display:flex;gap:var(--s2);margin-top:var(--s3)}.toast-a button{font-size:var(--t-sm);padding:6px var(--s3);border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface-1);cursor:pointer;font-weight:500}.toast-a button.p{background:var(--accent);border-color:var(--accent);color:#fff}.toast.tone-warm{background:linear-gradient(180deg,#fffcf6 0%,var(--warm-soft) 100%);border-color:var(--warm-line)}.toast.tone-warm .toast-t{color:var(--warm-deep)}.toast.tone-error{background:var(--danger-soft);border-color:var(--danger-line)}.toast.tone-error .toast-t{color:var(--danger)}.login{height:100%;display:grid;place-items:center;background:radial-gradient(1100px 520px at 78% 4%,rgba(120,190,235,.22),transparent 60%),radial-gradient(880px 600px at 4% 98%,rgba(15,108,168,.4),transparent 62%),linear-gradient(160deg,#05121f,#0d3554 46%,#14618f);padding:var(--s5)}.login-card{width:min(400px,100%);background:var(--surface-1);border-radius:18px;padding:var(--s6) var(--s6) var(--s5);box-shadow:0 32px 80px -24px #030c16b3}.login-card.blocked{text-align:center}.blocked-t{font-size:var(--t-xl);margin:var(--s4) 0 var(--s2);color:var(--ink)}.blocked-d{color:var(--muted);font-size:var(--t-sm);line-height:1.7;margin:0 0 var(--s3)}.login-card.blocked .btn-primary{margin-top:var(--s3)}.login-logo{display:flex;justify-content:center;margin:var(--s2) 0 var(--s4);color:var(--ink)}.logo-lockup{display:inline-flex;flex-direction:column;align-items:center;gap:var(--s3)}.logo-lockup img,.logo-lockup svg{display:block}.login-s{font-size:var(--t-base);color:var(--muted);text-align:center;margin:0 0 var(--s5)}.pwset-d{color:var(--muted);font-size:var(--t-sm);line-height:1.7;margin:calc(-1 * var(--s3)) 0 var(--s4);text-align:center}.pwset-logout{display:block;width:100%;margin-top:var(--s3);min-height:44px;background:none;border:0;color:var(--muted);font-size:var(--t-sm);cursor:pointer;text-decoration:underline}.pw-username{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.field{margin-bottom:var(--s4)}.field label{display:block;font-size:var(--t-sm);font-weight:600;color:var(--ink-2);margin-bottom:var(--s2)}.field input,.field select,.field textarea,.adm-row input,.adm-row select,.toolbar input[type=search]{width:100%;font-size:var(--t-md);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:9px var(--s3);background:var(--surface-1);color:var(--ink);transition:border-color .14s,box-shadow .14s}.field input:focus,.field select:focus,.field textarea:focus,.adm-row input:focus,.adm-row select:focus,.toolbar input[type=search]:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235B7590' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 9l7 7 7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--s3) center;padding-right:var(--s6)!important}select[multiple]{background-image:none;padding-right:var(--s3)!important}.btn-primary{width:100%;padding:11px;border-radius:var(--r-md);border:none;background:var(--accent);color:#fff;font-size:var(--t-md);font-weight:600;cursor:pointer;margin-top:var(--s2);box-shadow:0 2px 8px -2px #0b527f8c;transition:background .15s,transform .08s}@media (hover: hover){.btn-primary:hover:not(:disabled){background:var(--accent-hover)}}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{opacity:.45;cursor:default;box-shadow:none}.error,.notice,.warn{font-size:var(--t-base);border-radius:var(--r-md);padding:var(--s3) var(--s4);margin-bottom:var(--s4);line-height:1.7;border:1px solid}.error{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.notice{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-hover)}.warn{background:var(--warm-soft);border-color:var(--warm-line);color:var(--warm-deep)}.page{flex:1;overflow-y:auto;padding:var(--s5) var(--s6) var(--s6);background:var(--ground);min-width:0}.page>*{max-width:880px}.page-h{font-size:var(--t-xl);font-weight:600;margin:0 0 var(--s1);letter-spacing:-.01em}.page-d{font-size:var(--t-base);color:var(--muted);margin:0 0 var(--s5);line-height:1.7}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s4)}.page-head .page-d{margin-bottom:0}.stats{display:flex;gap:var(--s2)}.stat{min-width:120px;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s2) var(--s4);box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:2px}.stat b{font-family:var(--mono);font-size:var(--t-xl);font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--ink)}.stat span{font-size:var(--t-xs);color:var(--muted);letter-spacing:.06em}.bar{display:flex;align-items:center;gap:var(--s4);flex-wrap:wrap;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s3) var(--s4);margin-bottom:var(--s3);box-shadow:var(--sh-1)}.bar-l{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}.bar-t{font-size:var(--t-base);font-weight:600}.bar .check{margin-left:auto}.check{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--muted);cursor:pointer}.check input{accent-color:var(--accent);width:14px;height:14px}.seg{display:inline-flex;padding:3px;gap:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-full)}.seg button{background:none;border:none;font-size:var(--t-sm);font-weight:500;color:var(--muted);padding:5px var(--s3);border-radius:var(--r-full);cursor:pointer;transition:background .14s,color .14s,box-shadow .14s}@media (hover: hover){.seg button:hover:not(:disabled):not(.on){color:var(--ink-2)}}.seg button.on{background:var(--surface-1);color:var(--ink);font-weight:600;box-shadow:var(--sh-2)}.seg button:disabled{opacity:.45;cursor:default}.tk{display:grid;grid-template-columns:124px 1fr;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:var(--s3);box-shadow:var(--sh-1);overflow:hidden;transition:box-shadow .16s}@media (hover: hover){.tk:hover{box-shadow:var(--sh-2)}}.tk.closed{background:var(--surface-2)}.tk-side{padding:var(--s4);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:var(--s2);align-items:flex-start;background:var(--surface-2)}.tk.closed .tk-side{background:transparent}.tk-no{font-family:var(--mono);font-size:var(--t-lg);font-weight:600;color:var(--accent-hover);letter-spacing:.01em;line-height:1.2}.tk-age{font-size:var(--t-xs);color:var(--muted);font-weight:500}.tk-main{padding:var(--s4) var(--s5);min-width:0}.tk-q{font-size:var(--t-lg);font-weight:600;line-height:1.7;white-space:pre-wrap;word-break:break-word;margin:0 0 var(--s2);letter-spacing:-.005em}.tk-meta{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--muted);margin-bottom:var(--s3);flex-wrap:wrap}.tk-face{width:20px;height:20px;border-radius:var(--r-full);background:linear-gradient(150deg,#f4f8fb,#dbe6ef);border:1px solid var(--line-strong);color:var(--ink-2);display:grid;place-items:center;font-size:10px;font-style:normal;font-weight:600}.tk-dot{width:3px;height:3px;border-radius:var(--r-full);background:var(--muted-2)}.tk-hit{margin-bottom:var(--s3);font-size:var(--t-sm);color:var(--muted)}.tk-hit summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--accent-hover);font-weight:500}.tk-hit pre{margin:var(--s2) 0 0;font-family:var(--mono);font-size:var(--t-xs);line-height:1.7;white-space:pre-wrap;word-break:break-word;color:var(--muted);padding:var(--s2) var(--s3);background:var(--surface-2);border-radius:var(--r-sm)}.tk-answer{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-md);padding:var(--s3) var(--s4);font-size:var(--t-md);line-height:1.85;white-space:pre-wrap;word-break:break-word;color:var(--ink-2);margin-bottom:var(--s3)}.tk-answer-l{font-size:var(--t-xs);letter-spacing:.08em;color:var(--accent-hover);font-weight:600;margin-bottom:2px}.tk .card-actions{border-top:none;padding-top:0}.promote{margin-top:var(--s3);padding:var(--s4) var(--s5);background:var(--surface-1);border:1px solid var(--accent-line);border-radius:var(--r-md)}.promote-ai .mini{margin-left:var(--s2)}.card-t{font-size:var(--t-md);font-weight:600}.card.push .card-actions{border-top:none}.card{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s4) var(--s5);margin-bottom:var(--s3);box-shadow:var(--sh-1)}.card-h{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s3);flex-wrap:wrap}.card-no{font-family:var(--mono);font-size:var(--t-md);font-weight:600;color:var(--accent-hover);letter-spacing:.02em}.card-meta{margin-left:auto;font-size:var(--t-sm);color:var(--muted-2)}.card-q{font-size:var(--t-md);line-height:1.85;white-space:pre-wrap;word-break:break-word;margin:0 0 var(--s4)}.card-actions{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding-top:var(--s3)}.card-actions a{margin-left:auto;font-size:var(--t-sm);color:var(--muted)}.pill{display:inline-block;font-size:var(--t-xs);padding:2px var(--s2);border-radius:var(--r-full);white-space:nowrap;font-weight:600;border:1px solid}.pill.ok{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.pill.mute{background:var(--surface-2);color:var(--muted);border-color:var(--line-strong)}.pill.wait{background:var(--warm-soft);color:var(--warm-deep);border-color:var(--warm-line)}.pill.new{background:var(--accent-soft);color:var(--accent-hover);border-color:var(--accent-line)}.pill.bad{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-line)}.answer-box{width:100%;min-height:104px;font-size:var(--t-md);line-height:1.85;border:1px solid var(--line-strong);border-radius:var(--r-md);padding:var(--s3);margin-bottom:var(--s3);resize:vertical;background:var(--surface-1);transition:border-color .14s,box-shadow .14s}.answer-box:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.hint{font-size:var(--t-sm);color:var(--muted);line-height:1.7;margin-top:var(--s2)}.adm{flex:1;display:flex;min-height:0}.adm-nav{flex:0 0 208px;background:var(--surface-1);border-right:1px solid var(--line);padding:var(--s4) var(--s3)}.adm-nav-title{padding:var(--s1) var(--s3) var(--s3);margin-bottom:var(--s2);border-bottom:1px solid var(--line);font-size:var(--t-md);font-weight:700;color:var(--ink);letter-spacing:.02em}.adm-nav button{display:block;width:100%;text-align:left;padding:9px var(--s3);margin-bottom:2px;font-size:var(--t-base);color:var(--muted);line-height:1.5;background:none;border:none;border-radius:var(--r-md);cursor:pointer;font-weight:500;transition:background .14s,color .14s}@media (hover: hover){.adm-nav button:hover{background:var(--surface-2);color:var(--ink-2)}}.adm-nav button.on{background:var(--accent-soft);color:var(--accent-hover);font-weight:600}.adm-body{flex:1;overflow-y:auto;padding:var(--s5) var(--s6) var(--s6);background:var(--ground);min-width:0}.contract-band{margin:0 0 var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--accent-line);border-radius:var(--r-md);background:var(--accent-soft);color:var(--accent-hover);font-size:var(--t-sm);font-weight:600}.adm-sec{margin-bottom:var(--s6)}.adm-h{font-size:var(--t-lg);font-weight:600;letter-spacing:-.005em;display:flex;align-items:center;flex-wrap:wrap}.adm-d{font-size:var(--t-base);color:var(--muted);margin:var(--s1) 0 var(--s4);line-height:1.75}.adm-row{display:grid;grid-template-columns:190px 1fr 104px;gap:var(--s3);align-items:center;padding:var(--s2) 0}.adm-l{font-size:var(--t-base);font-weight:600;line-height:1.45}.adm-l small{display:block;font-weight:400;color:var(--muted-2);font-size:var(--t-xs);line-height:1.5}.okchip{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:24px;padding:2px 10px;font-size:var(--t-xs);font-weight:600;letter-spacing:.02em;line-height:1.4;white-space:nowrap;color:var(--ok);background:var(--ok-soft);border:1px solid var(--ok-line);border-radius:var(--r-full)}.okchip.ng{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-line)}.okchip.partial{color:var(--warm-deep);background:var(--warm-soft);border-color:var(--warm-line)}.okchip.none{color:var(--muted-2);background:var(--surface-2);border-color:var(--line)}.an-group{padding:var(--s3) 0;border-top:1px solid var(--line)}.an-group-h{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s1)}.an-group-h small{color:var(--muted)}.an-names{font-size:var(--t-sm);color:var(--ink-2);line-height:1.8}.adm-foot{flex:none;border-top:1px solid var(--line);padding:var(--s3) var(--s6);display:flex;gap:var(--s2);align-items:center;background:var(--surface-1);box-shadow:0 -8px 20px -16px #0a1c2e66}.adm-note{margin-right:auto;font-size:var(--t-sm);color:var(--muted)}.adm-btn{font-size:var(--t-base);padding:8px var(--s4);border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface-1);cursor:pointer;font-weight:500;white-space:nowrap;transition:border-color .14s,background .14s}@media (hover: hover){.adm-btn:hover:not(:disabled){border-color:var(--accent-line);background:var(--accent-soft)}}.adm-btn.pri{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;box-shadow:0 2px 8px -3px #0b527f99}@media (hover: hover){.adm-btn.pri:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}}.adm-btn:disabled{opacity:.42;cursor:default;box-shadow:none}table.grid{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--t-base);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1)}table.grid th{background:var(--surface-2);text-align:left;padding:var(--s3) var(--s4);font-weight:600;color:var(--muted);font-size:var(--t-xs);letter-spacing:.06em;border-bottom:1px solid var(--line);white-space:nowrap}table.grid td{padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);vertical-align:middle;line-height:1.55}table.grid tbody tr:last-child td{border-bottom:none}@media (hover: hover){table.grid tbody tr:hover td{background:var(--surface-2)}}.mono{font-family:var(--mono);font-size:var(--t-sm);letter-spacing:.01em;color:var(--muted)}.conn{display:flex;align-items:center;gap:var(--s4);padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-1);margin-bottom:var(--s3);box-shadow:var(--sh-1);transition:box-shadow .16s}@media (hover: hover){.conn:hover{box-shadow:var(--sh-2)}}.conn.ok{border-color:var(--ok-line)}.conn.ng{border-color:var(--danger-line)}.conn.partial{border-color:var(--warm-line)}.conn-ic{width:40px;height:40px;border-radius:var(--r-md);display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--muted-2)}.conn.ok .conn-ic{background:var(--ok-soft);color:var(--ok)}.conn.ng .conn-ic{background:var(--danger-soft);color:var(--danger)}.conn.partial .conn-ic{background:var(--warm-soft);color:var(--warm-deep)}.conn-main{min-width:0;flex:1}.conn-t{font-size:var(--t-md);font-weight:600;line-height:1.4;display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.conn-d{font-size:var(--t-sm);color:var(--muted);line-height:1.65;margin-top:2px}.conn-actions{display:flex;gap:var(--s2);flex:none}.caps{display:flex;gap:var(--s1);flex-wrap:wrap;margin-top:var(--s2)}.cap{font-size:var(--t-xs);padding:1px var(--s2);border-radius:var(--r-full);border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-weight:500}.cap.yes{border-color:var(--ok-line);background:var(--ok-soft);color:var(--ok)}.cap.no{border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger)}.cap.extra{border-color:var(--warm-line);background:var(--warm-soft);color:var(--warm-deep)}.auto-badge{font-size:10px;padding:1px var(--s2);border-radius:var(--r-full);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-hover);white-space:nowrap;margin-left:var(--s2);font-weight:600;letter-spacing:.04em}.map-switch{display:flex;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s4)}.map-switch button{display:inline-flex;align-items:center;gap:var(--s2);padding:8px var(--s3) 8px var(--s4);border-radius:var(--r-full);border:1px solid var(--line-strong);background:var(--surface-1);font-size:var(--t-base);font-weight:500;color:var(--muted);cursor:pointer;transition:border-color .14s,background .14s,color .14s}@media (hover: hover){.map-switch button:hover:not(.on){border-color:var(--accent-line);color:var(--ink-2)}}.map-switch button.on{background:var(--ink-2);border-color:var(--ink-2);color:#fff;font-weight:600}.map-switch button .okchip{padding:1px var(--s2);font-size:10px}.map-switch button.on .okchip.none{background:#ffffff1f;border-color:transparent;color:#c6d8e6}table.grid.map td{padding:var(--s2) var(--s3)}table.grid.map td select{width:100%;font-size:var(--t-base);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:6px var(--s3);background-color:var(--surface-1);color:var(--ink)}table.grid.map td select:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.map-role{font-weight:600;line-height:1.4;min-width:180px}.map-role small{display:block;font-weight:400;color:var(--muted-2);font-size:var(--t-xs);line-height:1.5}table.grid.map tr.todo.ng td{background:var(--danger-soft)}table.grid.map tr.todo.auto td{background:var(--accent-soft)}@media (hover: hover){table.grid.map tbody tr.todo:hover td{filter:brightness(.98)}}.thr{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.thr{--thumb: 16px}.thr input[type=range]{width:100%;margin:0;height:var(--thumb);background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.thr input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:var(--r-full);background:var(--line-strong)}.thr input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--thumb);height:var(--thumb);margin-top:calc((4px - var(--thumb)) / 2);border-radius:var(--r-full);background:var(--ink);border:2px solid var(--surface-1);box-shadow:var(--sh-2)}.thr input[type=range]::-moz-range-track{height:4px;border-radius:var(--r-full);background:var(--line-strong)}.thr input[type=range]::-moz-range-thumb{width:var(--thumb);height:var(--thumb);border-radius:var(--r-full);background:var(--ink);border:2px solid var(--surface-1);box-shadow:var(--sh-2)}.thr input[type=range]:focus-visible{outline:none}.thr input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--ring)}.thr-plot{position:relative;height:26px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line);overflow:hidden;margin:0 calc(var(--thumb) / 2)}.thr-plot i{position:absolute;top:6px;width:2px;height:14px;margin-left:-1px;border-radius:1px;background:var(--muted-2);opacity:.55}.thr-plot i.on{background:var(--accent);opacity:.9}.thr-line{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--ink)}.srcd-connect{display:grid;grid-template-columns:140px 1fr;gap:var(--s3) var(--s4);align-items:start}.srcd-connect .field{margin-bottom:0}.srcd-connect .hint{grid-column:1 / -1}.srcd-done{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--ok-line);background:var(--ok-soft);border-radius:var(--r-md);color:var(--ink);font-size:var(--t-base);margin-bottom:var(--s4)}.srcd-done-ic{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--ok);color:#fff;font-size:var(--t-xs);font-weight:700;flex:none}.srcd-done b{font-weight:600}.srcd-done .mini{margin-left:auto;flex:none}.srcd-conn{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--line);background:var(--surface-2);border-radius:var(--r-md);font-size:var(--t-base);margin-bottom:var(--s4)}.srcd-conn-t{flex:1;min-width:200px}.srcd-conn-t b{font-weight:600}.srcd-conn-a{display:inline-flex;gap:var(--s2);flex:none}.srcd-conn-token{flex-basis:100%;display:flex;align-items:flex-end;gap:var(--s3);padding-top:var(--s2);border-top:1px solid var(--line)}.srcd-conn-token .field{flex:1;margin-bottom:0}.srcd-sec{padding-top:var(--s4);margin-top:var(--s4);border-top:1px solid var(--line)}.srcd-sec-h{display:flex;align-items:baseline;gap:var(--s3);margin-bottom:var(--s3)}.srcd-sec-h b{font-size:var(--t-sm);font-weight:600;color:var(--ink-2)}.srcd-sec-h small{font-size:var(--t-xs);color:var(--muted)}.srcd-scope{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-base);color:var(--ink-2);line-height:1.6}.srcd-scope:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}.srcd-check-t{font-size:var(--t-xs);color:var(--muted-2);flex:none}.srcd-rows{display:flex;flex-direction:column;gap:var(--s1)}.srcd-row{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-1);font-size:var(--t-sm);color:var(--muted);transition:border-color .14s,background-color .14s}@media (hover: hover){.srcd-row:hover{border-color:var(--line-strong)}}.srcd-row.srcd-row-on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--ink-2)}.srcd-row-l{display:flex;align-items:center;gap:var(--s2);flex:1;min-width:0;cursor:pointer}.srcd-row-l input{accent-color:var(--accent);width:14px;height:14px;flex:none}.srcd-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.srcd-row-mv{display:inline-flex;gap:2px;flex:none}.srcd-row-mv .mini{padding:2px 8px;line-height:1.2}@media (max-width: 560px){.srcd-connect{grid-template-columns:1fr}}table.grid.spec td{padding:var(--s2) var(--s3)}table.grid.spec tr.spec-missing td{background:var(--danger-soft)}.key-once{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);margin:var(--s3) 0}.key-once code{flex:1;font-family:var(--mono);font-size:var(--t-sm);word-break:break-all;-webkit-user-select:all;user-select:all}.usage{display:flex;align-items:center;gap:var(--s3);min-width:0}.usage-bar{flex:1;height:6px;border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--line);overflow:hidden;min-width:80px}.usage-bar i{display:block;height:100%;background:var(--accent);border-radius:var(--r-full);transition:width .3s}.usage-bar.hot i{background:var(--danger)}.toolbar{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s4);flex-wrap:wrap}.toolbar input[type=search]{flex:1;min-width:200px;border-radius:var(--r-full);padding-left:var(--s4)}.toolbar .count{font-size:var(--t-sm);color:var(--muted);white-space:nowrap}.pager{display:flex;align-items:center;gap:var(--s3);justify-content:flex-end;margin-top:var(--s3);font-size:var(--t-sm);color:var(--muted)}.pager button{font-size:var(--t-sm);padding:6px var(--s3);border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface-1);cursor:pointer}@media (hover: hover){.pager button:hover:not(:disabled){border-color:var(--accent-line)}}.pager button:disabled{opacity:.4;cursor:default}.empty{text-align:center;padding:var(--s6) var(--s4);color:var(--muted-2);font-size:var(--t-base);background:var(--surface-1);border:1px dashed var(--line-strong);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:var(--s2);align-items:center}.empty b{color:var(--ink-2);font-size:var(--t-md)}.empty span{max-width:460px;line-height:1.7;color:var(--muted)}.ov-back{position:fixed;top:56px;right:0;bottom:0;left:0;background:#0a1c2e47;z-index:45;animation:fade .2s ease both}.tp{position:fixed;top:56px;right:0;bottom:0;width:min(360px,100%);background:var(--surface-1);box-shadow:-24px 0 60px -30px #0a1c2e99;z-index:46;display:flex;flex-direction:column;animation:tp-in .32s cubic-bezier(.2,.8,.2,1) both}.tp.tp-sheet,.ts{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;height:70%;border-radius:18px 18px 0 0;box-shadow:0 -20px 50px -20px #0a1c2e80;animation:ts-up .32s cubic-bezier(.2,.8,.2,1) both}.ts{background:var(--surface-1);z-index:46;display:flex;flex-direction:column}.ts-grab{width:36px;height:4px;border-radius:2px;background:var(--line-strong);margin:var(--s2) auto var(--s1);flex:none}.tp-h,.ts-h{display:flex;align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);font-weight:600;font-size:var(--t-md);flex:none}.ts-h small{font-weight:400;color:var(--muted-2);font-size:var(--t-xs)}.tp-no{font-family:var(--mono);font-size:var(--t-sm);font-weight:600}.tp-back,.tp-x{border:1px solid var(--line-strong);background:var(--surface-1);color:var(--muted);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;cursor:pointer;font-size:var(--t-sm)}.tp-x{margin-left:auto}.tp-b{padding:var(--s4);overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:var(--s4)}.tp-q{font-size:var(--t-lg);font-weight:600;line-height:1.5}.tp-kv{display:grid;grid-template-columns:auto 1fr;gap:var(--s1) var(--s3);font-size:var(--t-sm)}.tp-kv small{color:var(--muted-2);letter-spacing:.06em}.tp-kv b{font-weight:500;color:var(--ink-2)}.tp-steps{list-style:none;margin:0;padding:0 0 0 18px;position:relative;font-size:var(--t-sm)}.tp-steps:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:var(--line-strong)}.tp-step{position:relative;padding:var(--s1) 0 var(--s2);color:var(--ink-2)}.tp-step:before{content:"";position:absolute;left:-16px;top:9px;width:8px;height:8px;border-radius:50%;background:var(--line-strong);border:2px solid var(--surface-1)}.tp-step.tp-step-on:before{background:var(--accent)}.tp-step small{display:block;font-family:var(--mono);font-size:10px;color:var(--muted-2)}.ts-list{list-style:none;margin:0;padding:0;overflow:auto;overscroll-behavior:contain}.ts-list li button{width:100%;display:flex;align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);border:none;border-bottom:1px solid var(--line);background:none;font:inherit;font-size:var(--t-base);color:var(--ink);text-align:left;cursor:pointer}.ts-no{font-family:var(--mono);font-size:var(--t-xs);color:var(--muted);flex:none}.ts-q{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-empty{padding:var(--s5);text-align:center;color:var(--muted-2);font-size:var(--t-sm)}.rail-chip.rail-chip-ans{background:var(--accent-soft);color:var(--accent-hover);border-color:var(--accent-line);font-weight:600}.rail-chip.rail-chip-done{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}@keyframes tp-in{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}@keyframes ts-up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a1c2e6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;display:grid;place-items:center;padding:var(--s5);animation:fade .16s ease both}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface-1);border-radius:18px;width:min(520px,100%);max-height:88vh;overflow-y:auto;box-shadow:var(--sh-3);animation:pop .2s cubic-bezier(.2,.85,.3,1) both}.modal.modal-wide{width:min(760px,100%)}@keyframes pop{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.modal-h{padding:var(--s5) var(--s5) var(--s3);display:flex;align-items:baseline;gap:var(--s3)}.modal-h b{font-size:var(--t-lg);font-weight:600}.modal-h small{color:var(--muted);font-size:var(--t-sm)}.modal-h .x{margin-left:auto;background:none;border:none;font-size:var(--t-md);color:var(--muted-2);cursor:pointer;line-height:1;padding:var(--s1);border-radius:var(--r-sm)}@media (hover: hover){.modal-h .x:hover{background:var(--surface-2);color:var(--ink)}}.modal-b{padding:0 var(--s5) var(--s4)}.modal-f{padding:var(--s3) var(--s5) var(--s5);display:flex;gap:var(--s2);justify-content:flex-end;border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 18px 18px;position:sticky;bottom:0}.update{position:fixed;left:50%;transform:translate(-50%);bottom:var(--s5);z-index:40;width:max-content;max-width:calc(100vw - var(--s3) * 2);white-space:nowrap;background:var(--ink);color:#fff;border-radius:var(--r-full);padding:var(--s2) var(--s2) var(--s2) var(--s5);display:flex;align-items:center;gap:var(--s3);font-size:var(--t-base);box-shadow:var(--sh-3)}.update button{border:none;background:var(--accent);color:#fff;border-radius:var(--r-full);padding:6px var(--s4);font-size:var(--t-sm);font-weight:600;cursor:pointer}@media (hover: none) and (pointer: coarse){input,textarea,select{font-size:16px!important}}@media (max-width: 960px){.rail{display:none}.tiles{grid-template-columns:1fr}.chat{padding:var(--s4) var(--s3) var(--s2)}.home{padding:var(--s5) var(--s3) var(--s3)}.compose{padding:var(--s3)}.adm-nav{flex-basis:140px;padding:var(--s3) var(--s2)}.adm-body,.page{padding:var(--s4) var(--s3) var(--s5)}.adm-row{grid-template-columns:1fr;gap:var(--s2);padding:var(--s3) 0;border-bottom:1px solid var(--line)}.conn{flex-wrap:wrap}.conn-actions{width:100%}.toasts{width:auto;left:var(--s3);right:var(--s3);bottom:var(--s3)}.appbar-right .appbar-user{display:none}.appbar-nav{margin-left:var(--s2)}.appbar-tix{display:inline-flex}.appbar-tix .appbar-tix-l,.appbar-notice .appbar-tix-l{display:none}.duty{display:flex}.home-q{font-size:var(--t-2xl)}.tk{grid-template-columns:1fr}.tk-side{flex-direction:row;align-items:center;border-right:none;border-bottom:1px solid var(--line);padding:var(--s3) var(--s4)}.page-head{align-items:flex-start}.stat{min-width:0;flex:1}}@media (max-width: 560px){.appbar-notice{padding:4px 8px}.appbar-link-settings{display:none}.appbar-nav button{padding:5px var(--s2)}}@media (max-width: 640px){.shell{padding-bottom:0}.body{padding-bottom:calc(56px + var(--sab))}.appbar{height:calc(56px + var(--sat));padding-top:var(--sat)}.appbar-face-btn{border:0;cursor:pointer;width:40px;height:40px;margin:2px;font-family:inherit}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:44;height:calc(56px + var(--sab));padding-bottom:var(--sab);display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--surface-1);border-top:1px solid var(--line)}.tabbar button{border:0;background:none;font:inherit;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:44px;cursor:pointer;-webkit-tap-highlight-color:transparent}.tab-ic{position:relative;display:inline-flex;align-items:center;justify-content:center;width:52px;height:28px;border-radius:var(--r-full);transition:background .12s ease}.tabbar button:active .tab-ic{background:var(--accent-soft)}.tabbar button.tab-on{color:var(--accent)}.tabbar button.tab-on .tab-ic{background:var(--accent-line)}.tabbar button.tab-on .tab-l{font-weight:700}.tab-badge{position:absolute;top:-4px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--accent);color:#fff;font:600 10px/18px var(--mono);font-style:normal;text-align:center}.tab-l{font-size:10px;line-height:1}.tp.tp-sheet,.ts{height:auto;min-height:40dvh;max-height:calc(100dvh - 56px - var(--sat));padding-bottom:var(--sab)}.tp.tp-page,.ts.ts-page{position:fixed;left:0;right:0;top:calc(56px + var(--sat));bottom:calc(56px + var(--sab));width:auto;height:auto;min-height:0;max-height:none;padding-bottom:0;border-radius:0;box-shadow:none;animation:none}.tp.tp-page .tp-b{flex:1}.np-readers{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3)}.np-reader{padding:var(--s2) var(--s3);border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-1)}.np-reader:last-child{border-bottom:1px solid var(--line)}.np-read-b{padding:var(--s3) var(--s3) var(--s3) var(--s4);min-height:44px}.np-del-b{min-height:44px;padding:var(--s2) var(--s4)}.toasts{left:var(--s3);right:var(--s3);bottom:calc(56px + var(--sab) + var(--s3));width:auto}.update{bottom:calc(56px + var(--sab) + var(--s3))}.ov-back{inset:calc(56px + var(--sat)) 0 0 0}.ov-back.ov-back-top{top:0;right:0;bottom:0;left:0}.acct{position:fixed;left:0;right:0;bottom:0;z-index:46;background:var(--surface-1);border-radius:18px 18px 0 0;padding:var(--s2) var(--s4) calc(var(--s4) + var(--sab));box-shadow:var(--sh-3);animation:ts-up .22s ease both}.acct-h{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) 0 var(--s3);border-bottom:1px solid var(--line)}.acct-face{width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent-hover);display:grid;place-items:center;font-weight:700;font-style:normal}.acct-nm{font-weight:700;color:var(--ink)}.acct-sub{font-size:var(--t-xs);color:var(--muted)}.acct-h .tp-x{margin-left:auto}.acct-b{display:grid;gap:var(--s3);padding-top:var(--s3)}.acct-logout,.acct-pw{width:100%;min-height:44px}.modal-back{padding:0;place-items:end center}.modal,.modal.modal-wide{width:100%;max-height:calc(100dvh - var(--sat));border-radius:18px 18px 0 0}.modal-f,.modal .card-actions{flex-direction:column}.modal-f{padding-bottom:calc(var(--s5) + var(--sab))}.modal-f button,.modal .card-actions button{width:100%;min-height:44px}.chat{padding:var(--s3) var(--s3) var(--s2)}.chat-tools{position:static;justify-content:flex-end;margin:0 0 var(--s2)}.qb{border-radius:14px}.qb-h,.qb-q,.qb-b,.qb-f{padding-left:var(--s3);padding-right:var(--s3)}.qb-f{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.qb-f-q{grid-column:1 / -1}.qb-f .mini{width:100%;min-height:44px;margin:0}.qb-f button:only-of-type{grid-column:1 / -1}.qb-esc-slip{flex-wrap:wrap;row-gap:var(--s3)}.qb-esc-cell,.qb-esc-cell:first-child{flex:1 1 42%}.qb-esc-cell:nth-child(3){border-left:0;padding-left:0}.qb-esc-cl{white-space:nowrap}.qb-esc-cv{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.compose{padding:var(--s2) var(--s3) var(--s2);border-top:0}.compose-hint{display:none}.duty{padding:6px var(--s3);white-space:nowrap;overflow:hidden}.duty-st{flex:none}.duty-nm{overflow:hidden;text-overflow:ellipsis;min-width:0}.home{padding:var(--s4) var(--s3) var(--s3)}.home-q{font-size:var(--t-xl);margin:var(--s1) 0 var(--s2)}.tile{min-height:64px}.tile .ti{width:40px;height:40px}.page{padding:var(--s3)}.page-head{flex-direction:column;align-items:stretch;gap:var(--s3)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.stat{min-width:0}.bar{flex-direction:column;align-items:stretch;gap:var(--s2)}.seg{display:grid;grid-template-columns:repeat(3,1fr)}.seg button{min-height:40px}.tk{grid-template-columns:1fr}.tk-side{flex-direction:row;align-items:center;gap:var(--s3);border-right:0;border-bottom:1px solid var(--line);padding:var(--s3)}.tk-main{padding:var(--s3)}.answer-box{width:100%;min-height:120px}.tk .card-actions{flex-direction:column;align-items:stretch}.tk .card-actions .adm-btn{width:100%;min-height:44px}.tk .card-actions .adm-btn.pri{order:-1}.adm{flex-direction:column;min-width:0;width:100%}.conn{flex-direction:column;align-items:stretch;gap:var(--s3);padding:var(--s3)}.conn-main{min-width:0;width:100%}.adm-nav{display:none}.adm-toc{display:flex;flex-direction:column;background:var(--surface-1);border-radius:14px;overflow:hidden;border:1px solid var(--line)}.adm-toc button{display:flex;align-items:center;gap:var(--s3);width:100%;padding:14px var(--s4);border:0;border-bottom:1px solid var(--line);background:none;font:inherit;text-align:left;cursor:pointer;min-height:56px}.adm-toc button:last-child{border-bottom:0}.adm-toc-l{flex:1;min-width:0}.adm-toc-nm{font-weight:600;color:var(--ink);font-size:var(--t-base)}.adm-toc-lead{font-size:var(--t-xs);color:var(--muted);margin-top:2px}.adm-toc-go{color:var(--muted-2);font-size:18px;flex:none}.adm-page-h{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) 0 var(--s3)}.adm-page-back{width:32px;height:32px;display:grid;place-items:center;border:0;background:none;color:var(--ink-2);font-size:22px;cursor:pointer;margin-left:-6px}.adm-page-nm{font-weight:700;font-size:var(--t-lg);color:var(--ink)}.adm-body{padding:var(--s3) var(--s3) var(--s5)}table.grid{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.adm-cards{display:flex;flex-direction:column;gap:var(--s2)}.adm-card{background:var(--surface-1);border:1px solid var(--line);border-radius:12px;padding:var(--s3) var(--s3) var(--s2)}.adm-card-h{display:flex;align-items:center;gap:var(--s2)}.adm-card-nm{font-weight:600;color:var(--ink);flex:1;min-width:0}.adm-card-sub{font-size:var(--t-xs);color:var(--muted);margin-top:4px;word-break:break-all}.adm-card-kv{display:flex;flex-wrap:wrap;gap:4px var(--s3);font-size:var(--t-xs);color:var(--muted);margin-top:4px}.adm-card-f{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s2)}.adm-card-f .adm-btn{min-height:36px}.adm-card-role{flex:none;background:var(--surface-2);color:var(--muted);border-color:var(--line)}.adm-card-f{justify-content:flex-end}.adm-card.todo.ng,.adm-card.spec-missing{background:var(--danger-soft)}.adm-card.todo.auto{background:var(--accent-soft)}.adm-card-nm.mono{word-break:break-all}.adm-card-sel{width:100%;margin-top:var(--s2);min-height:44px;font-size:var(--t-base);color:var(--ink);background-color:var(--surface-1);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:8px var(--s3)}.adm-card-sel:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.adm-row input:not([type=checkbox]):not([type=radio]),.adm-row select{width:100%;min-height:44px}.adm-row:has(>.check){grid-template-columns:minmax(0,1fr) auto}.adm-row:has(>.check)>.adm-l{grid-column:1;grid-row:1}.adm-row>.check{grid-column:2;grid-row:1;justify-self:end;align-self:start;min-height:44px;margin-top:-10px}.adm-row:has(>.check)>*:not(.adm-l):not(.check){grid-row:1}.adm-row:has(>.okchip-unit){position:relative}.adm-row:has(>.okchip-unit)>.okchip-unit{position:absolute;right:12px;bottom:var(--s3);height:44px;padding:0;background:none;border:0;color:var(--muted);pointer-events:none}.adm-row:has(>.okchip-unit) input{padding-right:96px}.adm-row:has(>.okchip-state){grid-template-columns:minmax(0,1fr) auto}.adm-row:has(>.okchip-state)>.adm-l{grid-column:1;grid-row:1}.adm-row>.okchip-state{grid-column:2;grid-row:1;justify-self:end;align-self:start}.adm-row:has(>.okchip-state)>*:not(.adm-l):not(.okchip-state){grid-column:1 / -1}.shell:has(.adm-foot) .body{padding-bottom:0}.adm-foot{margin-bottom:calc(56px + var(--sab));flex-direction:column;align-items:stretch;gap:var(--s2);padding:var(--s3)}.adm-foot .adm-btn{width:100%;min-height:44px}.login{height:100dvh;padding:calc(var(--s4) + var(--sat)) var(--s4) calc(var(--s4) + var(--sab))}.login-card{width:100%;padding:var(--s5) var(--s4)}.login .btn-primary{min-height:48px}}
