:root{--paper:#F7F9FA;--surface:#FFFFFF;--surface-2:#F4F7F8;--surface-3:#EDF2F4;--ink:#0F1E25;--ink-soft:#5A6A72;--ink-faint:#93A0A7;--line:#E7ECEF;--line-soft:#F0F4F5;--petrol:#0E6E78;--petrol-deep:#0A545C;--petrol-ink:#0E6E78;--cyan:#12919B;--cyan-tint:#EAF5F6;--accent-glow:rgba(14,110,120,.16);--ok:#2C8A59;--ok-tint:#E7F4EC;--warn:#A9750F;--warn-tint:#F8EFDB;--high:#C4463B;--high-tint:#FBE9E7;--console-1:#0E2932;--console-2:#0A1F26;--console-ink:#DCE7EA;--console-ink-soft:#93B4BA;--console-ink-faint:#6F969D;--console-line:rgba(255,255,255,.09);--shadow:0 1px 2px rgba(15,40,50,.04),0 6px 20px -10px rgba(15,40,50,.12);--shadow-lift:0 2px 6px rgba(15,40,50,.05),0 24px 50px -20px rgba(15,40,50,.24);--shadow-sheet:0 -10px 44px -14px rgba(15,40,50,.22);--ring:0 0 0 4px var(--accent-glow);--r:16px;--r-sm:12px;--r-lg:24px;--r-pill:999px;--display:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,"SF Mono",monospace;--ease:cubic-bezier(.22,.61,.36,1);--spring:cubic-bezier(.34,1.56,.64,1);--dur:.22s;--tap:48px;--tap-sm:44px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--gutter:18px;--maxw:1120px;--nav-h:66px;--readout-h:60px}@media (min-width:768px){:root{--gutter:24px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0A1216;--surface:#111E24;--surface-2:#16262D;--surface-3:#1B2E36;--ink:#E7F0F2;--ink-soft:#A2B5BC;--ink-faint:#778B93;--line:#22353D;--line-soft:#1A2A31;--petrol:#17A5B0;--petrol-deep:#0E6E78;--petrol-ink:#4FC3CC;--cyan:#3FB8C2;--cyan-tint:#12303A;--accent-glow:rgba(23,165,176,.22);--ok:#54C07E;--ok-tint:#122C1F;--warn:#E0AE4E;--warn-tint:#2E2413;--high:#EF8079;--high-tint:#331A1A;--console-1:#16262D;--console-2:#111E24;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px -12px rgba(0,0,0,.7);--shadow-lift:0 2px 4px rgba(0,0,0,.45),0 24px 50px -20px rgba(0,0,0,.8);--shadow-sheet:0 -10px 44px -14px rgba(0,0,0,.75)}}:root[data-theme=dark]{--paper:#0A1216;--surface:#111E24;--surface-2:#16262D;--surface-3:#1B2E36;--ink:#E7F0F2;--ink-soft:#A2B5BC;--ink-faint:#778B93;--line:#22353D;--line-soft:#1A2A31;--petrol:#17A5B0;--petrol-deep:#0E6E78;--petrol-ink:#4FC3CC;--cyan:#3FB8C2;--cyan-tint:#12303A;--accent-glow:rgba(23,165,176,.22);--ok:#54C07E;--ok-tint:#122C1F;--warn:#E0AE4E;--warn-tint:#2E2413;--high:#EF8079;--high-tint:#331A1A;--console-1:#16262D;--console-2:#111E24;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px -12px rgba(0,0,0,.7);--shadow-lift:0 2px 4px rgba(0,0,0,.45),0 24px 50px -20px rgba(0,0,0,.8);--shadow-sheet:0 -10px 44px -14px rgba(0,0,0,.75)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--paper)}body{font-family:var(--body);background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1;overflow-x:hidden;min-height:100svh}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}img,svg{display:block;max-width:100%}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}button,[role=button],a.btn,label.tapping,summary{min-height:var(--tap);touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,select,textarea{font-size:16px}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:max(var(--gutter),var(--sal)) max(var(--gutter),var(--sar))}.boot{padding:80px var(--gutter);text-align:center;color:var(--ink-faint);font-family:var(--mono);font-size:.9rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.desk-only,.desk-only-flex{display:none}@media (min-width:768px){.desk-only{display:grid}.desk-only-flex{display:flex}}.topnav{align-items:center;gap:2px;margin-left:18px}.topnav a{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);padding:9px 13px;border-radius:var(--r-sm);font-size:.88rem;font-weight:500;color:var(--ink-soft);text-decoration:none;transition:background .16s,color .16s}.topnav a svg{width:18px;height:18px;stroke-width:1.8}.topnav a:hover{background:var(--surface-2);color:var(--petrol-ink)}.topnav a.active{background:var(--cyan-tint);color:var(--petrol-ink)}.topnav .pill{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--high);color:#fff;font-family:var(--mono);font-size:.62rem;font-weight:600;display:grid;place-items:center}.filestrip{height:4px;display:flex;flex:none}.filestrip i{flex:1}.filestrip i:nth-child(1){background:#ededed}.filestrip i:nth-child(2){background:#f2c744}.filestrip i:nth-child(3){background:#d64c40}.filestrip i:nth-child(4){background:#3e7cc2}.filestrip i:nth-child(5){background:#4c9e63}.filestrip i:nth-child(6){background:#26333b}.app{min-height:100svh;display:flex;flex-direction:column;padding-bottom:calc(var(--nav-h) + var(--sab))}.app main{flex:1;padding-block:16px 32px}@media (min-width:768px){.app{padding-bottom:0}.app main{padding-block:24px 80px}}.topbar{position:sticky;top:0;z-index:40;padding-top:var(--sat);background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.6) blur(12px);-webkit-backdrop-filter:saturate(1.6) blur(12px);border-bottom:1px solid var(--line-soft)}@supports not (background:color-mix(in srgb,red 50%,transparent)){.topbar{background:var(--paper)}}.topbar-row{display:flex;align-items:center;gap:10px;min-height:56px}.brand{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:inherit}.brand h1{font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:-.015em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand .sub{font-size:.72rem;color:var(--ink-soft);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.mark{width:38px;height:38px;border-radius:11px;flex:none;background:linear-gradient(150deg,#0b5c66,#083e45);display:grid;place-items:center;box-shadow:var(--shadow)}.mark svg{width:22px;height:22px}.mark.lg{width:52px;height:52px;border-radius:15px}.mark.lg svg{width:30px;height:30px}@media (min-width:768px){.topbar-row{min-height:68px}.brand h1{font-size:1.2rem}.brand .sub{font-size:.78rem}.mark{width:44px;height:44px}.mark svg{width:26px;height:26px}}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}.tabs::-webkit-scrollbar{display:none}.tab{font-family:var(--display);font-weight:500;font-size:.92rem;letter-spacing:-.01em;color:var(--ink-faint);background:none;border:none;cursor:pointer;padding:12px 14px;position:relative;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;transition:color .16s}.tab .idx{font-family:var(--mono);font-size:.7rem;color:var(--cyan)}.tab.active{color:var(--ink)}.tab.active:after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2.5px;background:var(--petrol);border-radius:2px}.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-top:1px solid var(--line);padding-bottom:var(--sab)}@supports not (background:color-mix(in srgb,red 50%,transparent)){.bottomnav{background:var(--surface)}}.bottomnav a,.bottomnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:var(--nav-h);background:none;border:none;cursor:pointer;text-decoration:none;color:var(--ink-faint);font-family:var(--body);font-size:.68rem;font-weight:500;letter-spacing:.01em;position:relative}.bottomnav a svg,.bottomnav button svg{width:22px;height:22px;stroke-width:1.7}.bottomnav a.active,.bottomnav button.active{color:var(--petrol-ink)}.bottomnav a.active:before,.bottomnav button.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:26px;height:2.5px;border-radius:0 0 3px 3px;background:var(--petrol-ink)}.bottomnav .badge{position:absolute;top:8px;left:calc(50% + 8px);min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--high);color:#fff;font-family:var(--mono);font-size:.6rem;font-weight:600;display:grid;place-items:center}@media (min-width:768px){.bottomnav{display:none}}.page-head{margin-bottom:16px}.page-head h2{font-family:var(--display);font-weight:600;font-size:1.35rem;letter-spacing:-.02em;line-height:1.2}.page-head p{font-size:.86rem;color:var(--ink-soft);margin-top:3px}@media (min-width:768px){.page-head h2{font-size:1.6rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.brand-mark-img{overflow:hidden;padding:0;background:#fff;border:1px solid var(--line)}.brand-mark-img img{display:block;width:100%;height:100%;object-fit:cover}.brand-mark-img{width:auto!important;min-width:112px;height:46px!important;flex:0 0 auto!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}.brand-mark-img img{display:block;width:112px!important;height:46px!important;object-fit:contain!important;object-position:left center!important}@media (max-width:540px){.brand-mark-img{min-width:92px;height:40px!important}.brand-mark-img img{width:92px!important;height:40px!important}}:root[data-theme=dark] .brand-logo-img,:root[data-theme=dark] .brand-mark-img img{content:url(/brand/diaendo-logo-dark.png)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-logo-img,:root:not([data-theme=light]) .brand-mark-img img{content:url(/brand/diaendo-logo-dark.png)}}.btn{font-family:var(--body);font-size:.9rem;font-weight:500;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 16px;cursor:pointer;transition:background .16s,border-color .16s,color .16s;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1.2}.btn svg{width:18px;height:18px;flex:none;stroke-width:1.8}.btn:hover{border-color:var(--cyan);color:var(--petrol-ink)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--petrol);border-color:var(--petrol);color:#fff}.btn.primary:hover{background:var(--petrol-deep);border-color:var(--petrol-deep);color:#fff}.btn.danger{color:var(--high);border-color:var(--line)}.btn.danger:hover{border-color:var(--high);background:var(--high-tint)}.btn:disabled{opacity:.5;cursor:default;transform:none}.btn.block{width:100%}.btn.lg{padding:14px 22px;font-size:1rem;border-radius:var(--r)}.icon-btn{width:var(--tap);height:var(--tap);flex:none;display:grid;place-items:center;background:none;border:none;border-radius:var(--r-sm);color:var(--ink-soft);cursor:pointer;transition:background .16s,color .16s}.icon-btn svg{width:21px;height:21px;stroke-width:1.8}.icon-btn:hover{background:var(--surface-2);color:var(--petrol-ink)}.inp{font-family:var(--body);font-size:16px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;width:100%;min-height:var(--tap);transition:border-color .14s,box-shadow .14s}.inp::placeholder{color:var(--ink-faint)}.inp:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-tint)}.fl{display:block;font-size:.85rem;font-weight:500;color:var(--ink-soft);margin-bottom:16px}.fl .inp{margin-top:7px}.fl-hint{font-weight:400;color:var(--ink-faint);margin-left:6px}.group{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}.group-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;border-bottom:1px solid var(--line-soft);background:var(--surface-2)}.group-head .tag{font-family:var(--mono);font-size:.65rem;font-weight:600;letter-spacing:.08em;color:var(--petrol-ink);background:var(--cyan-tint);padding:4px 8px;border-radius:6px}.group-head h2{font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:-.01em}.group-head p{font-size:.75rem;color:var(--ink-faint);width:100%}.group-body{padding:2px 16px 12px}@media (min-width:768px){.group-head p{width:auto;margin-left:auto}.group-body{padding:4px 20px 16px}}.field{padding:14px 0;border-bottom:1px solid var(--line-soft)}.field:last-child{border-bottom:none}.field>label,.field>.flabel{display:block;font-size:.92rem;font-weight:500;color:var(--ink);margin-bottom:10px}.field .hint{font-weight:400;color:var(--ink-faint);font-size:.8rem;margin-left:6px}.seg{display:flex;flex-wrap:wrap;gap:8px}.seg input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.seg label{display:inline-flex;align-items:center;min-height:var(--tap-sm);font-size:.88rem;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 14px;cursor:pointer;transition:background .14s,border-color .14s,color .14s;-webkit-user-select:none;user-select:none;line-height:1.25;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.seg label:hover{border-color:var(--cyan);color:var(--petrol-ink)}.seg input:checked+label{background:var(--petrol);border-color:var(--petrol);color:#fff;font-weight:500;box-shadow:0 2px 8px -2px #0b5c6680}.seg input:focus-visible+label{outline:2px solid var(--cyan);outline-offset:2px}.readout-bar{position:fixed;left:0;right:0;z-index:45;bottom:calc(var(--nav-h) + var(--sab));display:flex;align-items:center;gap:10px;width:100%;min-height:var(--readout-h);padding:8px max(14px,var(--sal)) 8px max(14px,var(--sar));background:linear-gradient(180deg,var(--console-1),var(--console-2));border:none;border-top:1px solid rgba(255,255,255,.09);color:var(--console-ink);cursor:pointer;text-align:left;box-shadow:var(--shadow-sheet)}.readout-bar .rb-codes{display:flex;align-items:center;gap:8px;flex:none}.readout-bar .rb-code{font-family:var(--mono);font-size:.78rem;font-weight:600;letter-spacing:.04em;background:#ffffff1a;border-radius:6px;padding:5px 9px;color:#fff;display:inline-flex;align-items:center;gap:6px}.readout-bar .rb-code.empty{color:var(--console-ink-faint);background:#ffffff0d}.readout-bar .rb-text{flex:1;min-width:0;font-size:.78rem;line-height:1.35;color:var(--console-ink-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.readout-bar .rb-chev{flex:none;width:20px;height:20px;color:var(--console-ink-faint)}.status{width:9px;height:9px;border-radius:50%;flex:none;background:#4a5a62}.status.ok{background:#54c07e}.status.warn{background:#e6b043}.status.high{background:#e77068}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0610148c;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border:none;width:100%;animation:fade .18s ease}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;max-height:88svh;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);color:var(--ink);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-sheet);padding-bottom:calc(20px + var(--sab));animation:slideup .22s cubic-bezier(.32,.72,0,1)}@keyframes slideup{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-grip{width:40px;height:4px;border-radius:2px;background:var(--line);margin:10px auto 4px;flex:none}.sheet-head{display:flex;align-items:center;gap:10px;padding:8px 16px 14px;border-bottom:1px solid var(--line-soft);position:sticky;top:0;background:var(--surface);z-index:1}.sheet-head h3{font-family:var(--display);font-weight:600;font-size:1.05rem;letter-spacing:-.01em}.sheet-head .icon-btn{margin-left:auto}.sheet-body{padding:14px 16px 4px}.console{background:linear-gradient(180deg,var(--console-1),var(--console-2));border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-lift);color:var(--console-ink)}.console-strip{height:4px;display:flex}.console-strip i{flex:1}.console-strip i:nth-child(1){background:#ededed}.console-strip i:nth-child(2){background:#f2c744}.console-strip i:nth-child(3){background:#d64c40}.console-strip i:nth-child(4){background:#3e7cc2}.console-strip i:nth-child(5){background:#4c9e63}.console-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--console-line)}.console-head .lbl{font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;color:var(--console-ink-faint);text-transform:uppercase}.console-head .live{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:.66rem;color:var(--console-ink-soft)}.console-head .dot{width:7px;height:7px;border-radius:50%;background:#4c9e63;animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 #4c9e6380}70%{box-shadow:0 0 0 7px #4c9e6300}to{box-shadow:0 0 #4c9e6300}}.readcard{padding:15px 16px;border-bottom:1px solid var(--console-line)}.readcard .k{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--console-ink-faint);margin-bottom:8px;display:flex;align-items:center;gap:8px}.readcard .k .code{margin-left:auto;background:#ffffff17;border-radius:5px;padding:2px 7px;font-size:.66rem;color:#b9d0d4}.dx-name{font-family:var(--display);font-weight:600;font-size:1.1rem;letter-spacing:-.01em;line-height:1.3;color:#fff;display:flex;align-items:baseline;gap:10px}.dx-empty{color:#5e7a81;font-weight:400;font-family:var(--body);font-size:.92rem}.why{margin-top:10px;padding:10px 12px;border-radius:9px;background:#ffffff0d;border-left:2px solid #4C9E63}.why .why-k{font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--console-ink-faint);margin-bottom:5px}.why p{font-size:.79rem;line-height:1.5;color:var(--console-ink-soft)}.why p+p{margin-top:7px;color:#c3d6da}.why.whatif{border-left-color:#e6b043}.why.missing{border-left-color:#e77068}.console-foot{padding:14px 16px 16px}.imp-lbl{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--console-ink-faint);margin-bottom:7px}.imp{font-size:.86rem;color:#cfe0e3;line-height:1.55}.findings{list-style:none;margin-top:12px;display:flex;flex-direction:column;gap:6px}.findings li{font-family:var(--mono);font-size:.72rem;color:var(--console-ink-soft);display:flex;gap:8px;line-height:1.45}.findings li:before{content:"›";color:#4c9e63;font-weight:600;flex:none}.findings li.empty:before{content:"·";color:#455c63}.findings li.empty{color:#556e75}.nexttest{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:11px 13px;border-radius:10px;background:#12919b24;border:1px solid rgba(63,184,194,.28)}.nexttest svg{width:17px;height:17px;flex:none;color:#4fc3cc;margin-top:1px}.nexttest .nt-t{font-size:.82rem;font-weight:600;color:#dcedef}.nexttest .nt-r{font-size:.75rem;color:var(--console-ink-soft);line-height:1.45;margin-top:2px}.disclaimer{font-size:.75rem;color:var(--ink-faint);line-height:1.55;margin-top:14px;padding:12px 14px;background:var(--surface);border:1px dashed var(--line);border-radius:10px}.disclaimer strong{color:var(--ink-soft);font-weight:600}.toothpick{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}.toothpick-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line-soft)}.toothpick-head .tp-t{font-size:.92rem;font-weight:500}.toothpick-head .tp-sel{font-family:var(--mono);font-size:.78rem;color:var(--petrol-ink);background:var(--cyan-tint);border-radius:6px;padding:3px 8px}.notation{display:flex;gap:2px;margin-left:auto;background:var(--surface-2);border-radius:8px;padding:3px}.notation button{border:none;background:none;border-radius:6px;font-family:var(--mono);font-size:.7rem;font-weight:600;letter-spacing:.04em;color:var(--ink-faint);padding:6px 9px;cursor:pointer;min-height:var(--tap-sm)}.notation button.on{background:var(--surface);color:var(--petrol-ink);box-shadow:var(--shadow)}.arch{padding:12px 10px 14px}.arch-row{margin-bottom:12px}.arch-row:last-child{margin-bottom:0}.arch-lbl{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);text-align:center;margin-bottom:6px}.arch-teeth{display:grid;grid-template-columns:repeat(16,1fr);gap:2px}.tooth{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:46px;padding:4px 0;border:1px solid transparent;border-radius:7px;background:var(--surface-2);cursor:pointer;font-family:var(--mono);font-size:.58rem;color:var(--ink-faint);transition:background .14s,color .14s,border-color .14s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.tooth svg{width:13px;height:16px}.tooth:hover{border-color:var(--cyan)}.tooth.on{background:var(--petrol);border-color:var(--petrol);color:#fff}.tooth.on svg{color:#fff}.tooth.mid{margin-right:5px}.arch-teeth .tooth:nth-child(8){margin-right:6px}@media (min-width:600px){.tooth{min-height:54px;font-size:.66rem}.tooth svg{width:16px;height:20px}}.save-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:14px;display:flex;flex-direction:column;gap:10px}.save-row .row2{display:flex;gap:10px}.save-row .row2 .btn{flex:1}.save-msg{font-size:.85rem;font-weight:500;text-align:center}.save-msg.ok{color:var(--ok)}.save-msg.err{color:var(--high)}.privacy-note{font-size:.72rem;color:var(--ink-faint);line-height:1.45;display:flex;gap:7px;align-items:flex-start}.privacy-note svg{width:14px;height:14px;flex:none;margin-top:2px}@media (min-width:768px){.save-row{flex-direction:row;align-items:center;flex-wrap:wrap}.save-row .inp{flex:1;min-width:200px}.save-row .row2{flex:none}.save-row .privacy-note{width:100%}}.cx-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:12px;overflow:hidden}.cx-block>.cx-btn{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;background:var(--surface-2);border:none;border-bottom:1px solid transparent;cursor:pointer;text-align:left}.cx-block.open>.cx-btn{border-bottom-color:var(--line-soft)}.cx-btn .n{font-family:var(--mono);font-size:.72rem;font-weight:600;color:var(--petrol-ink);background:var(--cyan-tint);border-radius:6px;padding:3px 8px;flex:none}.cx-btn .cx-title{font-family:var(--display);font-weight:600;font-size:.9rem;letter-spacing:-.005em;color:var(--ink);flex:1;min-width:0;line-height:1.3}.cx-btn .cx-prog{font-family:var(--mono);font-size:.7rem;color:var(--ink-faint);flex:none}.cx-btn .cx-chev{width:18px;height:18px;flex:none;color:var(--ink-faint);transition:transform .2s}.cx-block.open .cx-btn .cx-chev{transform:rotate(180deg)}.cx-track{height:3px;background:var(--line-soft)}.cx-track>i{display:block;height:100%;background:var(--petrol);transition:width .3s cubic-bezier(.4,0,.2,1)}.cx-body{display:none}.cx-block.open>.cx-body{display:block}.crit{padding:13px 16px;border-bottom:1px solid var(--line-soft)}.crit:last-child{border-bottom:none}.crit-top{display:flex;align-items:center;gap:8px;margin-bottom:9px}.crit-top .name{font-size:.88rem;font-weight:500;flex:1;line-height:1.35}.crit-top .auto{font-family:var(--mono);font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;color:var(--petrol-ink);background:var(--cyan-tint);border-radius:5px;padding:3px 6px;flex:none}.info-btn{width:30px;height:30px;min-height:30px;flex:none;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-faint);cursor:pointer}.info-btn svg{width:14px;height:14px}.info-btn:hover{border-color:var(--cyan);color:var(--petrol-ink)}.levels{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.levels input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.levels label{display:flex;align-items:center;justify-content:center;min-height:var(--tap-sm);border:1px solid var(--line);border-radius:9px;background:var(--surface-2);cursor:pointer;font-size:.82rem;font-weight:500;color:var(--ink-soft);transition:background .14s,border-color .14s,color .14s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.levels label:hover{border-color:var(--cyan)}.levels input:checked+label.l1{border-color:var(--ok);background:var(--ok-tint);color:var(--ok)}.levels input:checked+label.l2{border-color:var(--warn);background:var(--warn-tint);color:var(--warn)}.levels input:checked+label.l3{border-color:var(--high);background:var(--high-tint);color:var(--high)}.levels input:focus-visible+label{outline:2px solid var(--cyan);outline-offset:2px}.crit-desc{font-size:.79rem;color:var(--ink-soft);line-height:1.5;margin-top:9px;padding:9px 11px;border-radius:8px;background:var(--surface-2);border-left:2px solid var(--line)}.crit-desc.l1{border-left-color:var(--ok)}.crit-desc.l2{border-left-color:var(--warn)}.crit-desc.l3{border-left-color:var(--high)}.desc-list{display:flex;flex-direction:column;gap:10px}.desc-list .d{padding:11px 13px;border-radius:10px;background:var(--surface-2);border-left:3px solid var(--line)}.desc-list .d.l1{border-left-color:var(--ok)}.desc-list .d.l2{border-left-color:var(--warn)}.desc-list .d.l3{border-left-color:var(--high)}.desc-list .d .lv{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin-bottom:4px}.desc-list .d.l1 .lv{color:var(--ok)}.desc-list .d.l2 .lv{color:var(--warn)}.desc-list .d.l3 .lv{color:var(--high)}.desc-list .d p{font-size:.83rem;color:var(--ink-soft);line-height:1.5}.cx-bar{position:fixed;left:0;right:0;z-index:45;bottom:calc(var(--nav-h) + var(--sab));display:flex;align-items:center;gap:12px;width:100%;min-height:var(--readout-h);padding:8px max(14px,var(--sal)) 8px max(14px,var(--sar));background:linear-gradient(180deg,var(--console-1),var(--console-2));border:none;border-top:1px solid rgba(255,255,255,.09);color:var(--console-ink);cursor:pointer;text-align:left;box-shadow:var(--shadow-sheet)}.ring{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:1rem;border:3px solid #35505A;color:#7c99a1}.ring.on{border-color:var(--vc);color:#fff}.ring.lg{width:56px;height:56px;font-size:1.2rem}.verdict{display:flex;align-items:center;gap:13px}.verdict .vt{font-family:var(--display);font-weight:600;font-size:1rem;line-height:1.2;color:#fff}.verdict .vs{font-size:.76rem;color:#9ebec4;margin-top:2px;line-height:1.35}.cx-sum-head{padding:16px;background:linear-gradient(180deg,var(--console-1),var(--console-2));color:#fff}.cx-sum-head .lbl{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--console-ink-faint);margin-bottom:12px}.cx-sum-body{padding:16px}.bars{display:flex;flex-direction:column;gap:11px;margin-bottom:14px}.bar-row{display:flex;align-items:center;gap:10px;font-size:.82rem}.bar-row .bname{width:76px;flex:none;color:var(--ink-soft);display:flex;align-items:center;gap:6px}.bar-row .bname i{width:9px;height:9px;border-radius:50%;flex:none}.bar-track{flex:1;height:7px;background:var(--surface-2);border:1px solid var(--line-soft);border-radius:5px;overflow:hidden}.bar-fill{height:100%;width:0;border-radius:5px;transition:width .35s cubic-bezier(.4,0,.2,1)}.bar-row .bval{font-family:var(--mono);font-size:.8rem;font-weight:600;width:20px;text-align:right}.b1 i,.b1 .bar-fill{background:var(--ok)}.b2 i,.b2 .bar-fill{background:var(--warn)}.b3 i,.b3 .bar-fill{background:var(--high)}.guide{font-size:.84rem;color:var(--ink-soft);line-height:1.55;padding:12px 13px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line-soft)}.progress-note{font-family:var(--mono);font-size:.73rem;color:var(--ink-faint);margin-top:12px;text-align:center}.factors{display:flex;flex-direction:column;gap:7px;margin-top:14px}.factors .f{display:flex;gap:9px;align-items:flex-start;font-size:.8rem;line-height:1.4;color:var(--ink-soft)}.factors .f i{width:8px;height:8px;border-radius:50%;flex:none;margin-top:5px}.factors .f.l2 i{background:var(--warn)}.factors .f.l3 i{background:var(--high)}.factors .f b{font-weight:600;color:var(--ink)}@media (min-width:1024px){.dx-grid,.cx-grid{display:grid;grid-template-columns:minmax(0,1fr) 372px;gap:24px;align-items:start}.readout,.cx-sum{position:sticky;top:88px}.readout-bar,.cx-bar{display:none}.cx-sum{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-lift);overflow:hidden}}@media (max-width:1023px){.readout-desktop{display:none}.has-readout{padding-bottom:var(--readout-h)}}.auth-wrap{min-height:100svh;display:flex;flex-direction:column}.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:24px max(var(--gutter),var(--sal)) calc(24px + var(--sab)) max(var(--gutter),var(--sar))}.auth-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lift);padding:26px 22px}.auth-brand{display:flex;align-items:center;gap:13px;margin-bottom:22px}.auth-brand .brand-mark-img{width:58px;height:58px;flex:0 0 58px;border-radius:14px}.auth-brand h1{font-family:var(--display);font-weight:600;font-size:1.18rem;letter-spacing:-.015em;line-height:1.2}.auth-brand p{font-size:.82rem;color:var(--ink-soft);margin-top:3px}.auth-err{background:var(--high-tint);color:var(--high);font-size:.85rem;border-radius:9px;padding:11px 13px;margin-bottom:14px}.auth-foot{text-align:center;font-size:.86rem;color:var(--ink-soft);margin-top:18px}.auth-foot a{color:var(--petrol-ink);font-weight:600;text-decoration:none}.auth-foot a:hover{text-decoration:underline}.auth-back{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--ink-soft);text-decoration:none;margin-top:16px;justify-content:center;width:100%;min-height:var(--tap)}.auth-back:hover{color:var(--petrol-ink)}@media (min-width:768px){.auth-card{padding:32px 30px}}.empty-state{background:var(--surface);border:1px dashed var(--line);border-radius:var(--r);padding:32px 22px;text-align:center;color:var(--ink-soft);font-size:.9rem;line-height:1.6}.empty-state strong{color:var(--ink)}.empty-state .es-icon{width:44px;height:44px;margin:0 auto 12px;color:var(--ink-faint);opacity:.7}.searchbar{display:flex;gap:8px;margin-bottom:12px}.searchbar .inp{flex:1}.filters{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding:0 var(--gutter) 12px}.filters::-webkit-scrollbar{display:none}.filters button{flex:none;min-height:var(--tap-sm);font-size:.82rem;font-weight:500;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-pill);padding:8px 14px;cursor:pointer;white-space:nowrap}.filters button.on{background:var(--petrol);border-color:var(--petrol);color:#fff}.hist-list{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width:700px){.hist-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.hist-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:14px 16px}.hist-top{display:flex;align-items:center;gap:10px;margin-bottom:11px}.hist-tooth{font-family:var(--display);font-weight:700;font-size:1rem;color:var(--petrol-ink);background:var(--cyan-tint);border-radius:8px;padding:5px 9px;flex:none;min-width:38px;text-align:center}.hist-meta{min-width:0;flex:1}.hist-meta .hm-name{font-size:.82rem;color:var(--ink-soft);line-height:1.3}.hist-when{font-family:var(--mono);font-size:.71rem;color:var(--ink-faint)}.hist-dx{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px;align-items:center}.chip{font-size:.79rem;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);border-radius:7px;padding:5px 9px;display:inline-flex;gap:6px;align-items:center}.chip b{font-family:var(--mono);font-size:.7rem;color:var(--petrol-ink)}.chip.muted{color:var(--ink-faint)}.hist-imp{font-size:.81rem;color:var(--ink-soft);line-height:1.5;padding-top:9px;border-top:1px solid var(--line-soft)}.hist-note{font-size:.81rem;color:var(--ink-faint);margin-top:8px;font-style:italic}.hist-counts{display:flex;align-items:center;gap:5px;font-size:.77rem;color:var(--ink-soft);flex-wrap:wrap}.hist-counts .ans{color:var(--ink-faint);margin-left:auto;font-family:var(--mono);font-size:.72rem}.dot-ok,.dot-warn,.dot-high{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:6px;flex:none}.dot-ok{background:var(--ok)}.dot-warn{background:var(--warn)}.dot-high{background:var(--high)}.level-badge{font-family:var(--display);font-weight:600;font-size:.8rem;padding:5px 11px;border-radius:7px;color:#fff;flex:none}.level-badge.ok{background:var(--ok)}.level-badge.warn{background:var(--warn)}.level-badge.high{background:var(--high)}.hist-actions{display:flex;gap:6px;margin-top:12px;padding-top:11px;border-top:1px solid var(--line-soft)}.hist-actions .btn{flex:1;font-size:.82rem;padding:9px 10px;min-height:var(--tap-sm)}.recall{display:flex;align-items:center;gap:8px;font-size:.79rem;color:var(--ink-soft);margin-top:9px;padding:8px 11px;border-radius:8px;background:var(--surface-2)}.recall svg{width:15px;height:15px;flex:none;color:var(--ink-faint)}.recall.due{background:var(--warn-tint);color:var(--warn)}.recall.due svg{color:var(--warn)}.recall.overdue{background:var(--high-tint);color:var(--high)}.recall.overdue svg{color:var(--high)}.syncbar{display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:10px;margin-bottom:12px;font-size:.83rem;line-height:1.4;background:var(--warn-tint);color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent)}.syncbar svg{width:17px;height:17px;flex:none}.syncbar.ok{background:var(--ok-tint);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}.syncbar .btn{margin-left:auto;padding:7px 12px;min-height:var(--tap-sm);font-size:.8rem}.confirm{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:20px;background:#0610148c;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.confirm-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lift);padding:22px;max-width:380px;width:100%}.confirm-card h3{font-family:var(--display);font-weight:600;font-size:1.05rem;margin-bottom:8px}.confirm-card p{font-size:.88rem;color:var(--ink-soft);line-height:1.55;margin-bottom:18px}.confirm-actions{display:flex;gap:9px}.confirm-actions .btn{flex:1}.ig-link{display:inline-flex;align-items:center;gap:9px;font-size:.9rem;font-weight:500;color:var(--ink-soft);text-decoration:none;min-height:var(--tap);transition:color .16s}.ig-link svg{width:20px;height:20px;flex:none}.ig-link:hover{color:var(--petrol-ink)}.appfoot{margin-top:auto;padding:22px 0 calc(22px + var(--sab));border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:10px;align-items:center;font-size:.8rem;color:var(--ink-faint);text-align:center}@media (min-width:768px){.appfoot{flex-direction:row;justify-content:space-between;text-align:left}}.doc-wrap{display:flex;flex-direction:column;gap:14px;padding-bottom:24px}.doc-summary{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}.doc-sum-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px 10px}.doc-sum-head .tag{font-family:var(--mono);font-size:.62rem;font-weight:600;letter-spacing:.12em;color:var(--cyan);background:var(--cyan-tint);padding:3px 8px;border-radius:6px}.doc-sum-head h2{font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:-.01em}.doc-sum-tooth{margin-left:auto;font-size:.78rem;color:var(--ink-faint)}.doc-sum-row{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line-soft);border-top:1px solid var(--line-soft)}@media (min-width:560px){.doc-sum-row{grid-template-columns:1fr 1fr}}.doc-sum-cell{display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface);border:none;cursor:pointer;padding:14px 16px;min-height:var(--tap);width:100%}.doc-sum-cell:hover{background:var(--surface-2)}.doc-sum-cell .ic{width:36px;height:36px;flex:none;border-radius:10px;display:grid;place-items:center;background:var(--cyan-tint);color:var(--petrol-ink)}.doc-sum-cell .ic svg{width:19px;height:19px}.doc-sum-cell .lb{font-size:.72rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.doc-sum-cell .vl{font-size:.88rem;color:var(--ink);font-weight:500;margin-top:2px;line-height:1.3}.doc-sum-cell .vl.muted{color:var(--ink-faint);font-weight:400;display:inline-flex;align-items:center;gap:2px}.doc-sum-cell .vl.muted svg{width:15px;height:15px}.doc-sum-cell.empty .ic{background:var(--surface-3);color:var(--ink-faint)}.doc-sum-imp{padding:11px 16px;font-size:.85rem;color:var(--petrol-ink);font-weight:500;background:var(--cyan-tint);border-top:1px solid var(--line-soft)}.doc-tip{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border-top:1px solid var(--line-soft);font-size:.83rem;color:var(--ink-soft);line-height:1.55;background:var(--warn-tint)}.doc-tip svg{width:18px;height:18px;flex:none;color:var(--warn);margin-top:1px}.doc-fields{display:flex;flex-direction:column;gap:12px}.doc-field{display:flex;flex-direction:column;gap:6px}.doc-flabel{font-size:.8rem;font-weight:500;color:var(--ink-soft);display:flex;align-items:center;gap:8px}.doc-flabel .hint{font-size:.68rem;color:var(--ink-faint);font-weight:400}.doc-area{resize:vertical;min-height:46px;line-height:1.5;font-family:var(--body)}.doc-drop{width:100%;display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 16px;border:1.5px dashed var(--line);border-radius:var(--r);background:var(--surface-2);color:var(--petrol-ink);cursor:pointer;transition:border-color .15s,background .15s}.doc-drop:hover:not(:disabled){border-color:var(--cyan);background:var(--cyan-tint)}.doc-drop:disabled{opacity:.55;cursor:default}.doc-drop svg{width:26px;height:26px}.doc-drop span{font-weight:600;font-size:.92rem}.doc-drop small{font-size:.72rem;color:var(--ink-faint)}.doc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}@media (min-width:560px){.doc-grid{grid-template-columns:repeat(3,1fr)}}.doc-thumb{background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--r-sm);overflow:hidden;display:flex;flex-direction:column}.doc-thumb-img{position:relative;aspect-ratio:1;background:#0a1216}.doc-thumb-img img{width:100%;height:100%;object-fit:cover;display:block}.doc-thumb-x{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:8px;background:#08141ab8;color:#fff;border:none;display:grid;place-items:center;cursor:pointer}.doc-thumb-x svg{width:15px;height:15px}.doc-stage,.doc-cap{border:none;border-top:1px solid var(--line-soft);border-radius:0;font-size:.76rem;padding:8px 9px;min-height:auto;box-shadow:none;background:var(--surface)}.doc-stage:focus,.doc-cap:focus{box-shadow:none;border-color:var(--line-soft)}.doc-stage{font-weight:600;color:var(--petrol-ink)}.doc-tips-toggle{display:flex;align-items:center;gap:10px;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;cursor:pointer;color:var(--ink-soft);font-size:.88rem;font-weight:500;min-height:var(--tap)}.doc-tips-toggle svg{width:18px;height:18px;flex:none;color:var(--warn)}.doc-tips-toggle .chev{margin-left:auto;color:var(--ink-faint);transition:transform .18s}.doc-tips-toggle .chev.open{transform:rotate(90deg)}.doc-tips{list-style:none;display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-top:none;border-radius:0 0 var(--r) var(--r);margin-top:-14px;padding:14px 16px 16px}.doc-tips li{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;color:var(--ink-soft);line-height:1.55}.doc-tips li svg{width:16px;height:16px;flex:none;color:var(--ok);margin-top:2px}.hist-shots{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.hist-shot{width:54px;height:54px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--line-soft);background:#0a1216;padding:0;cursor:pointer;flex:none}.hist-shot img{width:100%;height:100%;object-fit:cover;display:block}.hist-shot-more{width:54px;height:54px;border-radius:var(--r-sm);display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line-soft);font-size:.8rem;font-weight:600;color:var(--ink-faint)}.lightbox{display:grid;place-items:center;background:#0a1216;border-radius:var(--r);overflow:hidden}.lightbox img{max-width:100%;max-height:70vh;display:block;object-fit:contain}.auth-brand .brand-mark-img{width:126px!important;min-width:126px!important;height:52px!important;flex:0 0 126px!important;border:0!important;border-radius:0!important;background:transparent!important}.auth-brand .brand-mark-img img{width:126px!important;height:52px!important;object-fit:contain!important}@media (max-width:460px){.auth-brand{gap:10px}.auth-brand .brand-mark-img{width:108px!important;min-width:108px!important;flex-basis:108px!important;height:46px!important}.auth-brand .brand-mark-img img{width:108px!important;height:46px!important}}.sheet-backdrop{z-index:100}.sheet{z-index:101;top:max(calc(var(--sat) + 8px),8px);bottom:0;max-height:none;height:auto;overflow:hidden;display:flex;flex-direction:column}.sheet-grip{flex:0 0 auto}.sheet-head{flex:0 0 auto;top:0;z-index:3;min-height:58px;padding-right:max(16px,var(--sar));padding-left:max(16px,var(--sal))}.sheet-head .icon-btn{position:relative;z-index:4;min-width:44px;min-height:44px}.sheet-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:calc(28px + var(--sab))}@media (max-width:1023px){.has-readout{padding-bottom:calc(var(--readout-h) + 110px)}.readout-bar,.cx-bar{z-index:44}.save-row{scroll-margin-bottom:calc(var(--nav-h) + var(--readout-h) + 28px)}}.unsaved-dot{width:6px;height:6px;border-radius:50%;background:var(--warn);flex:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 15%,transparent)}.doc-sum-head{flex-wrap:wrap}.doc-import-btn{margin-left:auto;padding:8px 12px;min-height:36px;font-size:.75rem}.import-help{font-size:.82rem;line-height:1.5;color:var(--ink-soft);margin-bottom:12px}.import-case-list{display:flex;flex-direction:column;gap:8px}.import-case{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto 20px;gap:10px;align-items:center;text-align:left;cursor:pointer}.import-case:active{background:var(--surface-2)}.import-case-main{min-width:0;display:flex;flex-direction:column;gap:3px}.import-case-main b{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.import-case-main small{font-size:.72rem;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.import-case-meta{font-size:.72rem;color:var(--ink-soft);text-align:right;max-width:150px}.import-case svg{width:18px;height:18px;color:var(--ink-faint)}.leave-warning{position:fixed;left:50%;bottom:calc(var(--nav-h) + var(--sab) + 16px);z-index:150;max-width:calc(100vw - 32px);transform:translate(-50%,12px);opacity:0;padding:11px 14px;border-radius:12px;background:var(--console-1);color:#fff;box-shadow:var(--shadow-lift);font-size:.8rem;line-height:1.35;transition:.18s var(--ease)}.leave-warning.show{opacity:1;transform:translate(-50%)}.tabs-with-reset{display:flex;align-items:stretch;gap:8px}.tabs-with-reset .tabs{flex:1 1 auto;min-width:0}.tab-reset{flex:0 0 auto;align-self:center;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink-soft);font:600 .76rem/1 var(--body);cursor:pointer;transition:transform .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease),background .16s var(--ease)}.tab-reset:hover{border-color:var(--petrol);color:var(--petrol)}.tab-reset:active{transform:scale(.97)}.cx-block{scroll-margin-top:150px}.cx-body{display:block;max-height:0;opacity:0;overflow:hidden;transform:translateY(-6px);pointer-events:none;transition:max-height .42s var(--ease),opacity .24s var(--ease),transform .32s var(--ease)}.cx-block.open>.cx-body{max-height:3200px;opacity:1;transform:translateY(0);pointer-events:auto}.switch-tab-card{max-width:470px}.switch-tab-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.switch-tab-actions .btn{min-width:104px}@media (max-width:720px){.tabs-with-reset{gap:4px}.tab-reset{min-height:32px;padding:0 9px;font-size:.7rem}.cx-block{scroll-margin-top:128px}.switch-tab-actions{display:grid;grid-template-columns:1fr 1fr}.switch-tab-actions .btn.primary{grid-column:1/-1}}.public{min-height:100svh;display:flex;flex-direction:column}.pubnav{position:sticky;top:0;z-index:40;padding-top:var(--sat);background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.6) blur(12px);-webkit-backdrop-filter:saturate(1.6) blur(12px);border-bottom:1px solid var(--line-soft)}@supports not (background:color-mix(in srgb,red 50%,transparent)){.pubnav{background:var(--paper)}}.pubnav-row{display:flex;align-items:center;gap:8px;min-height:60px}.pubnav-links{display:flex;align-items:center;gap:4px;margin-left:auto}.pubnav-links a.navlink{display:none;align-items:center;font-size:.88rem;font-weight:500;color:var(--ink-soft);text-decoration:none;padding:10px 12px;border-radius:var(--r-sm);min-height:var(--tap)}.pubnav-links a.navlink:hover{color:var(--petrol-ink);background:var(--surface-2)}@media (min-width:640px){.pubnav-links a.navlink{display:inline-flex}}.hero{padding:32px 0 8px}.hero-inner{display:flex;flex-direction:column;gap:26px}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--petrol-ink);background:var(--cyan-tint);border-radius:var(--r-pill);padding:7px 13px}.hero h1{font-family:var(--display);font-weight:600;font-size:clamp(1.85rem,7.5vw,3.1rem);line-height:1.08;letter-spacing:-.03em;text-wrap:balance}.hero h1 em{font-style:normal;color:var(--petrol-ink)}.hero .lede{font-size:1.02rem;color:var(--ink-soft);line-height:1.6;margin-top:14px;max-width:56ch}.hero-cta{display:flex;flex-direction:column;gap:10px;margin-top:22px}@media (min-width:480px){.hero-cta{flex-direction:row;flex-wrap:wrap}.hero-cta .btn{flex:1;min-width:170px}}.hero-photo{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lift);background:var(--surface-2);aspect-ratio:3/4;max-height:440px}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.hero-photo .ph-cap{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 14px;background:linear-gradient(180deg,transparent,rgba(8,20,26,.88));color:#fff}.hero-photo .ph-cap .n{font-family:var(--display);font-weight:600;font-size:1.02rem;letter-spacing:-.01em}.hero-photo .ph-cap .r{font-size:.8rem;color:#bbd2d7;margin-top:2px}@media (min-width:900px){.hero{padding:56px 0 16px}.hero-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}.hero-photo{max-height:none}}.sec{padding:44px 0}.sec-head{margin-bottom:22px;max-width:60ch}.sec-head .k{font-family:var(--mono);font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin-bottom:9px}.sec-head h2{font-family:var(--display);font-weight:600;font-size:clamp(1.4rem,4.6vw,2rem);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}.sec-head p{font-size:.95rem;color:var(--ink-soft);line-height:1.65;margin-top:11px}@media (min-width:768px){.sec{padding:64px 0}}.cards{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width:700px){.cards{grid-template-columns:repeat(3,1fr);gap:16px}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px 18px}.card .ci{width:42px;height:42px;border-radius:12px;background:var(--cyan-tint);color:var(--petrol-ink);display:grid;place-items:center;margin-bottom:14px}.card .ci svg{width:22px;height:22px;stroke-width:1.7}.card h3{font-family:var(--display);font-weight:600;font-size:1.02rem;letter-spacing:-.01em;margin-bottom:7px}.card p{font-size:.88rem;color:var(--ink-soft);line-height:1.6}.about-grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width:820px){.about-grid{grid-template-columns:repeat(2,1fr);gap:22px}}.photo-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}.photo-card img{width:100%;height:auto;display:block;background:var(--surface-2)}.photo-card .pc-body{padding:16px 18px}.photo-card h3{font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:-.01em;margin-bottom:6px}.photo-card p{font-size:.87rem;color:var(--ink-soft);line-height:1.6}.ig-strip{border-radius:var(--r-lg);overflow:hidden;position:relative;background:linear-gradient(135deg,#0b5c66,#083e45);color:#fff;padding:28px 20px;text-align:center}.ig-strip:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.14;background:radial-gradient(circle at 18% 22%,#F2C744 0,transparent 42%),radial-gradient(circle at 82% 78%,#D64C40 0,transparent 46%);pointer-events:none}.ig-strip>*{position:relative;z-index:1}.ig-strip h2{font-family:var(--display);font-weight:600;font-size:clamp(1.25rem,4.4vw,1.7rem);letter-spacing:-.02em;line-height:1.2}.ig-strip p{font-size:.92rem;color:#c2d9dd;line-height:1.6;margin-top:9px;max-width:46ch;margin-inline:auto}.ig-btn{display:inline-flex;align-items:center;gap:10px;margin-top:18px;min-height:var(--tap);background:#fff;color:#0b5c66;font-weight:600;font-size:.95rem;border-radius:var(--r-pill);padding:13px 24px;text-decoration:none;transition:transform .16s}.ig-btn svg{width:21px;height:21px}.ig-btn:hover{transform:translateY(-1px)}.cta{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:28px 20px;text-align:center}.cta h2{font-family:var(--display);font-weight:600;font-size:clamp(1.25rem,4.4vw,1.7rem);letter-spacing:-.02em;line-height:1.2}.cta p{font-size:.92rem;color:var(--ink-soft);line-height:1.6;margin-top:10px;max-width:48ch;margin-inline:auto}.cta .hero-cta{margin-top:20px;justify-content:center}@media (min-width:480px){.cta .hero-cta .btn{flex:0 1 auto}}.pubfoot{margin-top:auto;border-top:1px solid var(--line-soft);padding:26px 0 calc(26px + var(--sab))}.pubfoot-row{display:flex;flex-direction:column;gap:16px;align-items:center;text-align:center}.pubfoot .fnote{font-size:.79rem;color:var(--ink-faint);line-height:1.6;max-width:60ch}.pubfoot .flinks{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.pubfoot .flinks a{font-size:.85rem;color:var(--ink-soft);text-decoration:none;padding:9px 12px;border-radius:var(--r-sm);min-height:var(--tap);display:inline-flex;align-items:center}.pubfoot .flinks a:hover{color:var(--petrol-ink);background:var(--surface-2)}@media (min-width:768px){.pubfoot-row{flex-direction:row;justify-content:space-between;text-align:left;align-items:flex-start}}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.stats .s{text-align:center;padding:14px 8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.stats .s b{display:block;font-family:var(--display);font-weight:700;font-size:1.3rem;color:var(--petrol-ink);letter-spacing:-.02em}.stats .s span{font-size:.72rem;color:var(--ink-faint);line-height:1.3;display:block;margin-top:3px}.wordmark{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:1.06rem;line-height:1;color:var(--ink)}.wordmark span{color:var(--petrol-ink)}.brand h1.wordmark{font-size:1.06rem}.foot-brand{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.foot-brand .wordmark{font-size:1.15rem}.foot-by{font-size:.82rem;color:var(--ink-faint)}.hero-right{display:flex;justify-content:center}.hero-mock{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lift);overflow:hidden}.hm-bar{display:flex;align-items:center;gap:7px;padding:12px 15px;background:var(--surface-2);border-bottom:1px solid var(--line-soft)}.hm-dot{width:9px;height:9px;border-radius:50%;background:var(--line)}.hm-dot:nth-child(1){background:#e77068}.hm-dot:nth-child(2){background:#e6b043}.hm-dot:nth-child(3){background:#54c07e}.hm-title{margin-left:6px;font-family:var(--mono);font-size:.72rem;color:var(--ink-faint);letter-spacing:.02em}.hm-body{padding:18px}.hm-tooth{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.hm-tooth b{font-family:var(--display);font-weight:700;font-size:1.7rem;color:var(--petrol-ink);line-height:1;letter-spacing:-.02em}.hm-tooth span{font-size:.82rem;color:var(--ink-faint)}.hm-chips{display:flex;flex-direction:column;gap:8px}.hm-chip{display:flex;align-items:center;gap:9px;font-size:.82rem;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--r-sm);padding:9px 11px}.hm-chip i{font-style:normal;font-family:var(--mono);font-weight:600;font-size:.7rem;padding:3px 7px;border-radius:6px;color:#fff;flex:none}.hm-chip.high i{background:var(--high)}.hm-chip.warn i{background:var(--warn)}.hm-imp{margin-top:12px;font-size:.85rem;color:var(--petrol-ink);font-weight:500;padding:10px 12px;background:var(--cyan-tint);border-radius:var(--r-sm)}.hm-diff{margin-top:14px;padding-top:14px;border-top:1px solid var(--line-soft);display:flex;align-items:center;gap:12px}.hm-ring{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;font-family:var(--display);font-weight:700;color:#fff;background:var(--high);box-shadow:0 0 0 4px var(--high-tint)}.hm-diff-t{font-family:var(--display);font-weight:600;font-size:.95rem}.hm-diff-s{font-size:.78rem;color:var(--ink-faint);margin-top:2px}@media (min-width:900px){.hero-right{justify-content:flex-end}.hero-mock{max-width:none}}.who{display:grid;grid-template-columns:1fr;gap:18px;align-items:center}.who-photo{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);background:var(--surface-2);margin:0}.who-photo img{width:100%;height:auto;display:block}.who-body .k{font-family:var(--mono);font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin-bottom:9px}.who-body h2{font-family:var(--display);font-weight:600;font-size:clamp(1.35rem,4.4vw,1.9rem);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}.who-body p{font-size:.95rem;color:var(--ink-soft);line-height:1.65;margin:11px 0 16px}@media (min-width:820px){.who{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:36px}}.cta-note{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-size:.78rem;color:var(--ink-faint)}.cta-note svg{width:15px;height:15px;color:var(--petrol-ink)}.about-hero{max-width:64ch}.about-hero h1{font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,7vw,3rem);line-height:1.08;letter-spacing:-.03em;text-wrap:balance}.about-lecture{margin:0;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--surface-2)}.about-lecture img{width:100%;height:auto;display:block}.about-lecture figcaption{padding:12px 16px;font-size:.82rem;color:var(--ink-faint);background:var(--surface);border-top:1px solid var(--line-soft)}@media (max-width:559px){.pubnav .brand .sub{display:none}.pubnav-row{gap:6px}}.brand-art{display:flex;align-items:center;min-width:0}.brand-logo-img{display:block;width:clamp(150px,18vw,210px);height:auto;max-height:58px;object-fit:contain;object-position:left center}.brand-hero-card{position:relative;width:min(100%,720px);overflow:hidden;border:1px solid var(--line);border-radius:clamp(20px,3vw,34px);background:linear-gradient(145deg,#fff,#edf6ff);box-shadow:var(--shadow-lift)}.brand-hero-card img{display:block;width:100%;height:auto;aspect-ratio:880/410;object-fit:cover;object-position:center}.brand-hero-badge{position:absolute;left:16px;bottom:14px;padding:8px 12px;border-radius:999px;background:#03152adb;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.015em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media (max-width:540px){.brand-logo-img{width:145px}.brand-hero-badge{left:10px;bottom:10px;font-size:.65rem}}*{-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{font-family:var(--body);letter-spacing:-.011em;background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--display);letter-spacing:-.03em}h1{font-weight:800}h2,h3{font-weight:700}.btn{border-radius:var(--r-pill);font-family:var(--body);font-weight:600;letter-spacing:-.01em;gap:8px;padding:0 18px;min-height:var(--tap);border:1px solid var(--line);background:var(--surface);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.btn:active{transform:translateY(0) scale(.97);box-shadow:none}.btn:focus-visible{outline:none;box-shadow:var(--ring)}.btn.primary{background:var(--petrol);border-color:var(--petrol);color:#fff;box-shadow:0 6px 18px -8px var(--accent-glow)}.btn.primary:hover{background:var(--petrol-deep);border-color:var(--petrol-deep);box-shadow:0 10px 24px -8px var(--accent-glow)}.btn.lg{min-height:54px;padding:0 26px;font-size:1.02rem}.topbar-actions .icon-btn,.icon-btn{border-radius:var(--r-pill);transition:transform var(--dur) var(--ease),background var(--dur) var(--ease)}.icon-btn:active{transform:scale(.9)}.inp{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.inp:focus,.inp:focus-visible{outline:none;border-color:var(--petrol);box-shadow:var(--ring)}.card,.group,.hist-card,.hero-mock,.doc-summary,.who-photo,.about-lecture{border-radius:var(--r-lg);border-color:var(--line)}.card{transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}.chip,.level-badge,.tag{border-radius:var(--r-pill)}.tab{transition:color var(--dur) var(--ease);position:relative}.tab .idx{transition:color var(--dur) var(--ease)}.tab:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2.5px;border-radius:2px;background:var(--petrol);transform:scaleX(0);transform-origin:center;transition:transform var(--dur) var(--spring)}.tab.active:after{transform:scaleX(1)}.tabbar a,.tabbar button{transition:color var(--dur) var(--ease),transform var(--dur) var(--ease)}.tabbar a:active,.tabbar button:active{transform:scale(.92)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}main>*,.hero-inner>div,.sec .cards,.hist-card,.group,.doc-summary{animation:fadeUp .5s var(--ease) both}.cards .card:nth-child(2){animation-delay:.06s}.cards .card:nth-child(3){animation-delay:.12s}.sheet,.sheet-panel{animation:sheetUp .34s var(--spring) both}.sheet-backdrop,.modal-backdrop,.confirm-backdrop{animation:fade .2s var(--ease) both}.confirm-card,.modal-card{animation:pop .28s var(--spring) both}.toast-wrap{position:fixed;left:0;right:0;bottom:calc(var(--nav-h) + var(--sab) + 14px);display:flex;justify-content:center;z-index:120;pointer-events:none;padding:0 16px}@media (min-width:768px){.toast-wrap{bottom:calc(var(--sab) + 22px)}}.toast{pointer-events:auto;display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#fff;font-weight:600;font-size:.9rem;letter-spacing:-.01em;padding:12px 18px;border-radius:var(--r-pill);box-shadow:var(--shadow-lift);animation:pop .32s var(--spring) both;max-width:min(92vw,420px)}.toast.ok{background:#0f2a22}.toast.err{background:#3a1614}.toast .dot{width:18px;height:18px;flex:none;display:grid;place-items:center;border-radius:50%;background:#ffffff29}.toast .dot svg{width:12px;height:12px}.toast.leaving{animation:fade .2s var(--ease) reverse both}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.pt-row{display:flex;gap:14px;flex-wrap:wrap}.pt-age{flex:0 0 96px}.pt-gender{flex:1 1 220px}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg-btn{flex:1 1 auto;min-height:var(--tap-sm);padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);font-weight:600;font-size:.85rem;letter-spacing:-.01em;cursor:pointer;white-space:nowrap;transition:all var(--dur) var(--ease)}.seg-btn:hover{border-color:var(--petrol);color:var(--petrol-ink)}.seg-btn:active{transform:scale(.95)}.seg-btn.on{background:var(--petrol);border-color:var(--petrol);color:#fff;box-shadow:0 6px 16px -8px var(--accent-glow)}.xr-grid{display:flex;flex-direction:column;gap:14px}.xr-part{border:1px solid var(--line-soft);border-radius:var(--r);background:var(--surface-2);overflow:hidden}.xr-part-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line-soft);background:var(--surface)}.xr-part-label{font-weight:700;font-size:.82rem;color:var(--ink);letter-spacing:-.01em}.xr-count{font-size:.7rem;font-weight:700;color:#fff;background:var(--petrol);border-radius:var(--r-pill);padding:2px 8px;min-width:20px;text-align:center}.xr-part-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;padding:12px 14px}@media (min-width:520px){.xr-part-body{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}.xr-add{min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px dashed var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--petrol-ink);font-weight:600;font-size:.8rem;cursor:pointer;transition:all var(--dur) var(--ease)}.xr-add:hover:not(:disabled){border-color:var(--petrol);background:var(--cyan-tint)}.xr-add:active:not(:disabled){transform:scale(.96)}.xr-add:disabled{opacity:.45;cursor:default}.xr-add svg{width:20px;height:20px}.xr-part .doc-thumb{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r-sm);overflow:hidden}.xr-part .doc-thumb-img{aspect-ratio:1}.xr-part .doc-cap{border:none;border-top:1px solid var(--line-soft);border-radius:0;font-size:.72rem;padding:6px 8px}.file-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:12px}.file-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--surface-2)}.file-ic{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:8px;background:var(--cyan-tint);color:var(--petrol-ink)}.file-ic svg{width:16px;height:16px}.file-name{flex:1;min-width:0;font-size:.85rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:.75rem;color:var(--ink-faint);flex:none}.file-x{width:30px;height:30px;flex:none;display:grid;place-items:center;border:none;background:none;color:var(--ink-faint);cursor:pointer;border-radius:8px;transition:all var(--dur) var(--ease)}.file-x:hover{background:var(--high-tint);color:var(--high)}.file-x svg{width:15px;height:15px}.hist-patient{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:.82rem;font-weight:600;color:var(--petrol-ink)}.hist-patient svg{color:var(--petrol-ink)}.phone-input{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,1.35fr);gap:10px}.phone-code{padding-right:38px;min-width:190px;width:100%;text-overflow:ellipsis}.phone-number{min-width:0}.patient-shared{margin-bottom:16px}@media (max-width:430px){.phone-input{grid-template-columns:1fr}.phone-code{width:100%}}:root{--theme-ease: background-color .26s ease,color .26s ease,border-color .26s ease,box-shadow .26s ease}body,.topbar,.tabbar,.card,.group,.hist-card,.sheet,.inp,.btn{transition:var(--theme-ease)}.theme-shifting body,.theme-shifting .topbar,.theme-shifting .tabbar,.theme-shifting .card,.theme-shifting .group{transition-duration:.32s}.skeleton-stack{padding:18px 20px;display:grid;gap:14px;max-width:820px;margin:auto}.skeleton-stack i{height:116px;border-radius:24px;background:linear-gradient(100deg,var(--surface) 20%,var(--soft) 38%,var(--surface) 56%);background-size:220% 100%;animation:shimmer 1.15s linear infinite;border:1px solid var(--line)}@keyframes shimmer{to{background-position-x:-220%}}button,a,[role=button]{touch-action:manipulation}@media (hover:none){button:active,a:active,[role=button]:active{transform:scale(.975)}}.sheet-grip{width:54px;height:5px;border-radius:99px;cursor:grab}.sheet-grip:active{cursor:grabbing}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{:root{--paper:#fff;--surface:#fff;--surface-2:#fff;--surface-3:#fff;--ink:#000;--ink-soft:#333;--ink-faint:#666;--line:#bbb;--line-soft:#ddd;--console-1:#0E2932;--console-2:#0A1F26}html,body{background:#fff;color:#000}.btn,.icon-btn,.tabs,.save-row,.bottomnav,.readout-bar,.cx-bar,.topbar-actions,.sheet-backdrop,.searchbar,.filters,.hist-actions,.notation,.info-btn,.syncbar,.pubnav,.appfoot,.pubfoot,.hero-cta,.confirm,.auth-back{display:none!important}.app{padding-bottom:0}.app main{padding:0}.topbar{position:static;border-bottom:2px solid #000;padding-bottom:8px;margin-bottom:14px}.console,.cx-sum-head{-webkit-print-color-adjust:exact;print-color-adjust:exact}.group,.cx-block,.console,.cx-sum,.hist-card,.crit,.toothpick{box-shadow:none;break-inside:avoid;page-break-inside:avoid}.cx-block .cx-body{display:block!important}.cx-block .cx-chev{display:none}.dx-grid,.cx-grid{display:block}.readout,.cx-sum{position:static;margin-top:16px}.readout-desktop{display:block!important}.disclaimer{display:block!important;border:1px solid #000;margin-top:16px;break-inside:avoid;page-break-inside:avoid}a[href]:after{content:""}body:before{content:"DiaEndo · by Dr Ahmed Khaled";display:block;font-family:var(--display);font-weight:700;font-size:11pt;letter-spacing:.02em;color:#000;border-bottom:2px solid #000;padding-bottom:6px;margin-bottom:12px}@page{margin:14mm;@bottom-center{content:"DiaEndo · by Dr Ahmed Khaled — clinical decision support, not a substitute for clinical judgement";font-size:8pt;color:#555}}}
