:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color-scheme:dark;color:#e9eef7;background:#07090f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--app-height: 100vh;--bottom-nav-height: 82px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--bg: #07090f;--bg-soft: #0b0f18;--panel: linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .015));--raised: #111826;--raised-2: #0d1320;--ink: #e9eef7;--ink-2: #93a1b8;--ink-3: #5d6b82;--line: rgba(148, 163, 184, .14);--line-strong: rgba(148, 163, 184, .24);--red: #ff4d5e;--red-deep: #e33a4b;--red-soft: rgba(255, 77, 94, .12);--red-glow: rgba(255, 77, 94, .35);--blue: #6ba6ff;--blue-soft: rgba(107, 166, 255, .13);--green: #34d399;--green-soft: rgba(52, 211, 153, .13);--amber: #fbbf24;--amber-soft: rgba(251, 191, 36, .13);--grad-brand: linear-gradient(135deg, #ff6b77, #e33a4b);--shadow-sm: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-md: 0 12px 34px -18px rgba(0, 0, 0, .7)}@supports (height: 100dvh){:root{--app-height: 100dvh}}*{box-sizing:border-box}html,body,#root{width:100%;overflow-x:hidden}body{margin:0;min-width:320px;min-height:var(--app-height);background:radial-gradient(1100px 520px at 85% -12%,rgba(255,77,94,.09),transparent 60%),radial-gradient(900px 480px at -10% 110%,rgba(107,166,255,.06),transparent 55%),var(--bg);overscroll-behavior-y:none;touch-action:pan-y pinch-zoom;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}#root{min-height:var(--app-height)}button,input,select,textarea{font:inherit;-webkit-tap-highlight-color:transparent}button{border:0;cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.55}button,.btnLink{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:2px}code{padding:2px 6px;background:var(--raised-2);border:1px solid var(--line);border-radius:6px}.shell{display:flex;min-height:var(--app-height)}.rail{position:fixed;top:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;width:252px;height:auto;background:#0b0f18b8;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;gap:13px;align-items:center;padding:26px 20px 22px}.brandIcon{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;color:#fff;background:var(--grad-brand);border-radius:14px;box-shadow:0 10px 28px -10px var(--red-glow)}.brandIcon.small{width:36px;height:36px;border-radius:11px;box-shadow:none}.brand strong,.brand span{display:block}.brand strong{font-size:19px;letter-spacing:-.02em}.brand span{margin-top:3px;color:var(--ink-3);font-size:13px;font-weight:650}.railNav{display:grid;gap:5px;padding:10px 14px}.railItem{display:flex;align-items:center;gap:12px;width:100%;min-height:50px;padding:0 13px;color:var(--ink-2);background:transparent;border-radius:12px;font-size:15px;font-weight:720;text-align:left;transition:background .14s ease,color .14s ease}.railItem:hover{background:var(--raised-2);color:var(--ink)}.railItem.active{color:var(--red);background:var(--red-soft);box-shadow:inset 0 0 0 1px #ff4d5e40}.railIcon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;color:var(--ink-3);background:var(--raised-2);border:1px solid var(--line);border-radius:10px;transition:color .14s ease,border-color .14s ease}.railItem.active .railIcon{color:var(--red);border-color:#ff4d5e59;background:#ff4d5e14}.railUser{display:flex;gap:11px;align-items:center;margin-top:auto;padding:16px 18px;border-top:1px solid var(--line)}.avatar{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;color:#fff;background:var(--grad-brand);border-radius:12px;font-size:13px;font-weight:800}.railUser strong,.railUser span{display:block}.railUser strong{max-width:118px;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.railUser span{margin-top:2px;color:var(--ink-3);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.railUser .btnIcon{margin-left:auto}.main{flex:1;min-width:0;width:100%;max-width:1220px;margin:0 auto 0 calc(252px + max(0px,(100vw - 1472px) / 2));padding:34px 40px 60px}.pageHead{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:24px}.pageHead h1,.pageHead p{margin:0}.pageHead h1{font-size:30px;letter-spacing:-.02em}.pageHead p{margin-top:7px;color:var(--ink-3);font-size:14px;font-weight:680}.stack{display:grid;gap:16px}.mTop{display:none}.btnPrimary,.btnGhost,.btnDanger{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 20px;border-radius:12px;font-size:15px;font-weight:800;white-space:nowrap;transition:transform .12s ease,box-shadow .15s ease,background .15s ease}.btnPrimary:hover,.btnGhost:hover,.btnDanger:hover{transform:translateY(-1px)}.btnPrimary:active,.btnGhost:active,.btnDanger:active{transform:translateY(0)}.btnPrimary{color:#fff;background:var(--grad-brand);box-shadow:0 12px 28px -12px var(--red-glow)}.btnGhost{color:var(--ink);background:var(--raised-2);border:1px solid var(--line)}.btnGhost:hover{border-color:var(--line-strong)}.btnDanger{color:var(--red);background:var(--red-soft);border:1px solid rgba(255,77,94,.3)}.btnPrimary.wide{width:100%}.btnIcon{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;color:var(--ink-2);background:var(--raised-2);border:1px solid var(--line);border-radius:11px;transition:color .14s ease,background .14s ease}.btnIcon:hover{color:var(--ink);background:var(--raised)}.btnIcon.ghost,.btnIconMini.ghost{border-color:transparent;background:transparent}.btnIconMini{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;color:var(--ink-3);background:var(--raised-2);border:1px solid var(--line);border-radius:9px;transition:color .14s ease,background .14s ease}.btnIconMini:hover{color:var(--red);background:var(--red-soft)}.btnLink{color:var(--red);background:transparent;font-size:13px;font-weight:820}.panel,.statCard{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.panel{min-width:0;overflow:hidden;border-radius:var(--radius-lg)}.panelHead{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;padding:0 24px;border-bottom:1px solid var(--line)}.panelHead h2,.panelHead p{margin:0}.panelHead h2{font-size:18px;letter-spacing:-.01em}.panelHead p{margin-top:4px;color:var(--ink-3);font-size:13px;font-weight:650}.panelHead.split{align-items:flex-start;padding-top:16px;padding-bottom:16px}.empty{display:grid;justify-items:center;gap:9px;min-height:260px;padding:42px 22px;color:var(--ink-3);text-align:center}.emptyIcon{display:grid;place-items:center;width:58px;height:58px;color:var(--red);background:var(--red-soft);border:1px solid rgba(255,77,94,.22);border-radius:18px}.empty h3{margin:0;color:var(--ink);font-size:18px;letter-spacing:-.01em}.empty p{max-width:300px;margin:0 0 6px;font-size:14px;font-weight:600;line-height:1.5}.muted{color:var(--ink-3);font-size:13px;font-weight:600}.alert{display:flex;gap:11px;align-items:flex-start;margin:16px 24px;padding:13px 14px;border-radius:var(--radius-md);font-size:14px;font-weight:700;line-height:1.45}.alert.danger{color:var(--red);background:var(--red-soft);border:1px solid rgba(255,77,94,.3)}.alert.warning{color:var(--amber);background:var(--amber-soft);border:1px solid rgba(251,191,36,.3)}.alert strong,.alert span{display:block}.alert span{margin-top:2px;color:var(--ink-2);font-size:13px;font-weight:600}.inlineError,.formError{color:var(--red);font-size:13px;font-weight:720}.inlineError{margin:12px 24px 0}.formError{margin:0;padding:11px 13px;background:var(--red-soft);border:1px solid rgba(255,77,94,.3);border-radius:var(--radius-sm)}.statsGrid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.statCard{display:flex;flex-direction:column;min-width:0;min-height:136px;padding:18px;border-radius:var(--radius-lg)}.statIcon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px}.statIcon.blue{color:var(--blue);background:var(--blue-soft)}.statIcon.amber{color:var(--amber);background:var(--amber-soft)}.statIcon.red{color:var(--red);background:var(--red-soft)}.statIcon.green{color:var(--green);background:var(--green-soft)}.statValue{display:block;margin-top:auto;font-size:30px;line-height:1;font-weight:850;letter-spacing:-.02em}.statValue.blue{color:var(--blue)}.statValue.amber{color:var(--amber)}.statValue.red{color:var(--red)}.statValue.green{color:var(--green)}.statCard span{display:block;margin-top:8px;color:var(--ink-3);font-size:13px;font-weight:720}.glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.glance div{min-width:0;padding:15px 17px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.glance span{display:block;margin-bottom:6px;color:var(--ink-3);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.glance strong{display:block;color:var(--ink);font-size:14px;overflow-wrap:anywhere}.contentGrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.9fr);gap:16px;margin-top:16px}.newsList,.docList{display:grid;gap:10px;padding:20px 24px}.newsList.compact,.docList.compact{padding:16px}.newsCard,.docCard{min-width:0;padding:15px 16px;background:var(--raised-2);border:1px solid var(--line);border-radius:var(--radius-md)}.newsMeta{display:flex;gap:10px;align-items:center;justify-content:space-between;color:var(--ink-3);font-size:12px;font-weight:750}.newsMeta .pin{color:#fff;background:var(--grad-brand);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:850}.newsCard h3{margin:8px 0 7px;color:var(--ink);font-size:17px;letter-spacing:-.01em}.newsCard p{margin:0;color:var(--ink-2);font-size:14px;font-weight:600;line-height:1.5;white-space:pre-wrap}.newsFoot{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:12px;color:var(--ink-3);font-size:12px;font-weight:700}.docCard{display:flex;gap:12px;align-items:center;justify-content:space-between;width:100%;color:var(--ink-3);text-align:left;transition:border-color .14s ease,background .14s ease}.docCard:hover{border-color:var(--line-strong);background:var(--raised)}.docCard span,.docCard h3,.docCard p{display:block;margin:0}.docCard span,.docCard h3{color:var(--ink-2);font-size:12px;font-weight:820;text-transform:uppercase;letter-spacing:.05em}.docCard h3{margin-top:6px;color:var(--ink);font-size:17px;font-weight:780;text-transform:none;letter-spacing:-.01em}.docCard p{margin-top:5px;color:var(--ink-3);font-size:13px;font-weight:600;line-height:1.45}.docCard a{display:inline-flex;margin-top:9px;color:var(--red);font-size:13px;font-weight:820;text-decoration:none}.docCard a:hover{text-decoration:underline}.list{display:grid}.searchBar{display:flex;gap:10px;align-items:center;min-height:52px;padding:0 24px;color:var(--ink-3);background:var(--raised-2);border-bottom:1px solid var(--line)}.searchBar input{flex:1;min-width:0;color:var(--ink);background:transparent;border:0;outline:0}.searchBar input::placeholder{color:var(--ink-3)}.protocolRow{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;min-height:84px;padding:14px 24px;color:inherit;background:transparent;border-bottom:1px solid var(--line);text-align:left;transition:background .14s ease}.protocolRow:hover{background:var(--raised-2)}.protocolRow:last-child{border-bottom:0}.dot{display:grid;place-items:center;width:40px;height:40px;border-radius:12px}.dot.completed{color:var(--green);background:var(--green-soft)}.dot.active{color:var(--amber);background:var(--amber-soft)}.dot.review{color:var(--red);background:var(--red-soft)}.protocolBody{min-width:0}.protocolTop{display:flex;gap:8px;align-items:center;min-width:0}.protocolTop strong{min-width:0;overflow:hidden;color:var(--ink);font-size:16px;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap}.protocolMeta{display:block;margin-top:6px;color:var(--ink-3);font-size:13px;font-weight:620}.rowChevron{flex:0 0 auto;color:var(--ink-3)}.chip{flex:0 0 auto;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.chip.sev.low{color:var(--green);background:var(--green-soft)}.chip.sev.medium{color:var(--amber);background:var(--amber-soft)}.chip.sev.high{color:var(--red);background:var(--red-soft)}.chip.sev.emergency{color:#fff;background:var(--grad-brand);box-shadow:0 6px 18px -6px var(--red-glow)}.inlineForm{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:18px 24px;background:var(--raised-2);border-bottom:1px solid var(--line)}.bagGrid{display:grid;gap:14px;padding:20px 24px}.bagCard{display:grid;gap:14px;padding:17px;background:var(--raised-2);border:1px solid var(--line);border-radius:var(--radius-lg)}.bagHead{display:flex;gap:12px;align-items:center;justify-content:space-between}.bagHead h3,.bagHead span{margin:0}.bagHead h3{font-size:17px;letter-spacing:-.01em}.bagHead span{display:block;margin-top:3px;color:var(--ink-3);font-size:13px;font-weight:650}.materialForm{display:grid;grid-template-columns:minmax(120px,1fr) 100px 86px auto;gap:8px;align-items:center}.materialList,.classList{display:grid;gap:8px}.materialRow,.classRow{display:flex;gap:12px;align-items:center;justify-content:space-between;min-height:52px;padding:10px 12px;background:var(--raised);border:1px solid var(--line);border-radius:var(--radius-md)}.materialRow strong,.materialRow span{display:block}.materialRow strong{font-size:14px}.materialRow span{margin-top:2px;color:var(--ink-3);font-size:12px;font-weight:650}.materialRow.low{border-color:#ff4d5e66;background:#ff4d5e0f}.materialRow.low strong,.materialRow.low span{color:var(--red)}.classList{padding:20px 24px}.classRow{padding:12px 13px}.classMark{display:grid;place-items:center;width:34px;height:34px;color:var(--blue);background:var(--blue-soft);border-radius:10px}.classRow strong{flex:1;min-width:0;font-size:15px}.docNewsForm{display:grid;gap:10px;padding:18px 24px;background:var(--raised-2);border-bottom:1px solid var(--line)}.checkLine{display:flex;gap:9px;align-items:center;color:var(--ink-2);font-size:14px;font-weight:720}.scrim{position:fixed;inset:0;background:#020408a8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50}.sheet{position:fixed;inset:0 0 0 auto;z-index:60;width:min(600px,100vw);height:var(--app-height);background:var(--bg-soft);border-left:1px solid var(--line);box-shadow:-24px 0 70px #0000008c;transform:translate(105%);transition:transform .28s cubic-bezier(.32,.72,.37,1)}.sheet.open{transform:translate(0)}.sheetHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.eyebrow{display:block;margin-bottom:5px;color:var(--red);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.sheetHeader h2{margin:0;font-size:24px;letter-spacing:-.02em}.form,.detail{display:flex;flex-direction:column;gap:18px;height:100%;padding:26px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.formSection{display:grid;gap:12px}.sectionLabel{display:flex;align-items:center;gap:9px;color:var(--ink-3);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.sectionLabel:after{content:"";flex:1;height:1px;background:var(--line)}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:7px;color:var(--ink-2);font-size:13px;font-weight:750}.field>span{color:var(--ink-2);font-size:13px;font-weight:750}.field input,.field select,.field textarea,.inlineForm input,.materialForm input,.docNewsForm input,.docNewsForm textarea,.usageRow input,.loginCard input{width:100%;min-height:46px;padding:0 13px;color:var(--ink);background:var(--raised-2);border:1px solid var(--line);border-radius:11px;outline:0;transition:border-color .15s ease,box-shadow .15s ease}.field input:focus,.field select:focus,.field textarea:focus,.inlineForm input:focus,.materialForm input:focus,.docNewsForm input:focus,.docNewsForm textarea:focus,.usageRow input:focus,.loginCard input:focus{border-color:var(--red);box-shadow:0 0 0 3px #ff4d5e24}.field input.invalid,.field select.invalid,.field textarea.invalid{border-color:var(--red);box-shadow:0 0 0 3px #ff4d5e24}.field select option{background:var(--raised-2)}.field textarea{min-height:96px;padding:11px 13px;resize:vertical;line-height:1.5}.fieldError{color:var(--red);font-size:12px;font-weight:720}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:13px;background:var(--raised-2);border:1px solid var(--line);border-radius:var(--radius-md)}.checks label{display:flex;gap:9px;align-items:center;color:var(--ink);font-size:14px;font-weight:680}.checks input,.checkLine input{width:18px;height:18px;accent-color:var(--red)}.usageBox{display:grid;gap:12px;padding:14px;background:var(--raised-2);border:1px solid var(--line);border-radius:var(--radius-md)}.usageBoxHead{display:flex;gap:12px;align-items:center;justify-content:space-between}.usageBoxHead span{color:var(--ink-2);font-size:13px;font-weight:800}.usageBoxHead strong{font-size:13px;color:var(--ink-3)}.usageList{display:grid;gap:8px}.usageRow{display:grid;grid-template-columns:minmax(0,1fr) 86px;gap:10px;align-items:center;padding:10px 11px;background:var(--raised);border:1px solid var(--line);border-radius:var(--radius-md)}.usageRow>span{display:grid;gap:3px;min-width:0}.usageRow strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.usageRow small{color:var(--ink-3);font-size:11px;font-weight:650}.usageRow input{min-height:40px}.formActions{position:sticky;bottom:0;display:flex;gap:10px;justify-content:flex-end;margin-top:auto;padding:12px 0 0;background:var(--bg-soft)}.seg{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;padding:5px;background:var(--raised-2);border:1px solid var(--line);border-radius:13px}.seg button{min-height:40px;color:var(--ink-3);background:transparent;border-radius:10px;font-weight:800;transition:background .15s ease,color .15s ease}.seg button.active{color:#fff;background:var(--grad-brand);box-shadow:0 10px 24px -10px var(--red-glow)}.detailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.di,.db{display:grid;gap:6px;padding:14px;background:var(--raised-2);border:1px solid var(--line);border-radius:var(--radius-md)}.di span,.db span{color:var(--ink-3);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.di strong{min-width:0;color:var(--ink);overflow-wrap:anywhere}.db{background:var(--raised)}.db.note{min-height:160px}.db p{margin:0;color:var(--ink);font-weight:600;line-height:1.55;white-space:pre-wrap}.loginScreen{display:grid;place-items:center;min-height:var(--app-height);padding:24px;background:radial-gradient(900px 460px at 50% -10%,rgba(255,77,94,.14),transparent 55%),var(--bg)}.loginCard{display:grid;gap:16px;width:min(400px,100%);padding:30px 28px 26px;background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.loginBrand{display:grid;justify-items:center;gap:13px;text-align:center}.loginBrand h1,.loginBrand p{margin:0}.loginBrand h1{font-size:26px;letter-spacing:-.02em}.loginBrand p{margin-top:5px;color:var(--ink-3);font-size:14px;font-weight:640}.loginBrand .brandIcon{width:58px;height:58px;border-radius:18px}.loginCard .btnPrimary{margin-top:2px}.bottomNav,.fab{display:none}@media(max-width:1180px){.rail{width:224px}.main{margin-left:224px}.statsGrid{grid-template-columns:repeat(2,minmax(150px,1fr))}.contentGrid{grid-template-columns:1fr}}@media(max-width:780px){html,body,#root{height:100%;min-height:100%;overflow:hidden}.shell{display:block;height:100%;min-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.rail,.pageHead.desktopOnly{display:none}.main{min-height:100%;margin:0 auto;padding:calc(8px + env(safe-area-inset-top)) 14px calc(var(--bottom-nav-height) + 46px + env(safe-area-inset-bottom))}.mTop{position:sticky;top:0;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 -14px 14px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;background:#07090fc7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.mBrand{display:flex;gap:10px;align-items:center;min-width:0}.mBrand h1,.mBrand p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mBrand h1{font-size:19px;letter-spacing:-.01em}.mBrand p{margin-top:2px;color:var(--ink-3);font-size:12px;font-weight:640}.mTopActions{display:flex;gap:8px;align-items:center}.statsGrid{gap:10px}.statCard{min-height:118px;padding:15px}.statIcon{width:38px;height:38px}.statValue{font-size:27px}.statCard span{font-size:12px}.glance{grid-template-columns:1fr;gap:9px;margin-top:10px}.contentGrid{gap:12px;margin-top:12px}.panelHead{min-height:58px;padding:0 16px}.panelHead .btnPrimary{display:none}.panelHead.split{padding-top:13px;padding-bottom:13px}.empty{min-height:220px;padding:32px 16px}.protocolRow{grid-template-columns:40px minmax(0,1fr) auto;gap:12px;min-height:78px;padding:13px 16px}.list,.newsList,.docList,.bagGrid,.classList,.docNewsForm,.searchBar{padding-left:16px;padding-right:16px}.searchBar{min-height:50px;padding-top:0;padding-bottom:0}.sheet{inset:auto 0 0;width:100%;height:calc(var(--app-height) - 12px);border-top:1px solid var(--line-strong);border-left:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:0 -20px 60px #0009;transform:translateY(105%);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sheet.open{transform:translateY(0)}.form,.detail{min-height:100%;height:auto;overflow:visible;padding:calc(14px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom))}.form .sheetHeader,.detail .sheetHeader{position:sticky;top:0;padding-bottom:8px;background:var(--bg-soft);z-index:2}.formGrid,.detailGrid,.checks{grid-template-columns:1fr}.formActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:static;margin-right:-16px;margin-bottom:calc(-20px - env(safe-area-inset-bottom));margin-left:-16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.formActions.three{grid-template-columns:repeat(3,minmax(0,1fr))}.btnPrimary,.btnGhost,.btnDanger{min-height:48px;padding:0 14px;font-size:14px;border-radius:12px}.inlineForm{grid-template-columns:1fr;align-items:stretch;padding:16px}.materialForm{grid-template-columns:1fr 86px 74px}.materialForm .btnGhost{grid-column:1 / -1}.usageRow{grid-template-columns:1fr 76px}.bottomNav{position:fixed;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));left:12px;z-index:20;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:8px;background:#0d1320db;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line-strong);border-radius:22px;box-shadow:0 18px 50px -14px #000000bf}.bnItem{display:grid;grid-template-columns:1fr;place-items:center;justify-content:center;gap:3px;min-height:52px;color:var(--ink-3);background:transparent;border-radius:14px;font-size:10px;font-weight:720}.bnItem svg{width:20px;height:20px}.bnItem span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bnItem.active{color:var(--red);background:var(--red-soft)}.fab{position:fixed;right:50%;bottom:calc(var(--bottom-nav-height) + 2px + env(safe-area-inset-bottom));z-index:21;transform:translate(50%);display:grid;place-items:center;width:56px;height:56px;color:#fff;background:var(--grad-brand);border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 14px 34px -8px var(--red-glow);transition:transform .12s ease,box-shadow .15s ease}.fab:active{transform:translate(50%) scale(.92)}.loginScreen{width:100vw;max-width:100vw;min-height:var(--app-height);padding:calc(24px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}.loginCard{justify-self:center;width:100%;max-width:380px;padding:26px 22px 24px}}@media(max-width:430px){.statCard{padding:13px}.usageRow{grid-template-columns:1fr 70px}.bnItem{font-size:9px}.formActions.three .btnGhost span,.formActions.three .btnPrimary span{display:none}}@media(display-mode:standalone)and (max-width:780px){body{-webkit-user-select:none;user-select:none}input,select,textarea{-webkit-user-select:text;user-select:text}.main{padding-top:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
