@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f6f9fc;--bg-soft:#eef3f9;--surface:#fff;--surface-2:#f7fafc;--surface-sunken:#f1f5f9;--border:#e3e8ee;--border-strong:#d3dce6;--text:#0a2540;--text-soft:#425466;--text-dim:#6b7c93;--brand:#0077b6;--brand-2:#00b4d8;--brand-ink:#fff;--brand-soft:#e6f6fb;--brand-ring:#0091be47;--grad:linear-gradient(135deg, #00b4d8 0%, #0077b6 100%);--grad-soft:linear-gradient(135deg, #00b4d81f 0%, #0077b61a 100%);--danger:#cf3a52;--danger-soft:#fdecef;--ok:#0e8a5f;--ok-soft:#e6f6ef;--warn:#b9761a;--warn-soft:#fdf3e3;--adm:#6d4aad;--adm-soft:#f1ecfb;--shadow-xs:0 1px 2px #0a25400f;--shadow-sm:0 1px 3px #0a25400f, 0 2px 8px #0a25400d;--shadow-md:0 2px 5px #0a25400f, 0 12px 28px -8px #0a254024;--shadow-lg:0 4px 10px #0a254012, 0 24px 48px -12px #0a25402e;--shadow-brand:0 1px 2px #00548c47, 0 6px 16px -6px #0077b673;--radius:12px;--radius-sm:9px;--radius-lg:16px;--nav-h:60px;--ease:cubic-bezier(.2, .7, .3, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0b111b;--bg-soft:#0f1723;--surface:#141d2b;--surface-2:#1a2434;--surface-sunken:#101826;--border:#243043;--border-strong:#31415a;--text:#eaf1f8;--text-soft:#b3c2d2;--text-dim:#8496ab;--brand:#38bdf8;--brand-2:#22d3ee;--brand-ink:#04212e;--brand-soft:#0e2b3a;--brand-ring:#38bdf859;--grad:linear-gradient(135deg, #22d3ee 0%, #2f9bd8 100%);--grad-soft:linear-gradient(135deg, #22d3ee24 0%, #2f9bd81a 100%);--danger:#ff7b8f;--danger-soft:#2c1620;--ok:#4ade80;--ok-soft:#10281d;--warn:#f5c66b;--warn-soft:#2a2012;--adm:#b9a3f0;--adm-soft:#221c33;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000073, 0 2px 10px #00000052;--shadow-md:0 2px 6px #00000080, 0 14px 32px -10px #0009;--shadow-lg:0 6px 14px #00000080, 0 28px 56px -14px #000000b3;--shadow-brand:0 1px 2px #00000080, 0 8px 20px -8px #22d3ee73;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.5}a{color:var(--brand);transition:color .15s var(--ease);text-decoration:none}a:hover{color:var(--brand-2)}.link-plain{color:inherit;border-bottom:1px dashed var(--border-strong,var(--border))}.link-plain:hover{color:var(--brand);border-bottom-color:currentColor}h1{letter-spacing:-.02em;margin:0 0 4px;font-size:24px;font-weight:700;line-height:1.25}h2{letter-spacing:-.01em;margin:0 0 10px;font-size:16px;font-weight:650;line-height:1.3}h3{margin:0 0 6px;font-size:14px;font-weight:600}p{margin:0 0 10px}small,.dim{color:var(--text-dim)}small{font-size:12.5px}.muted{color:var(--text-soft)}.section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin:26px 0 10px;font-size:12px;font-weight:650}::selection{background:var(--brand-soft);color:var(--text)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-260px 0}to{background-position:260px 0}}.rise{animation:rise .32s var(--ease) both}.rise-1{animation-delay:40ms}.rise-2{animation-delay:80ms}.rise-3{animation-delay:.12s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}@keyframes cal-in-next{0%{opacity:.35;transform:translate(16px)}to{opacity:1;transform:none}}@keyframes cal-in-prev{0%{opacity:.35;transform:translate(-16px)}to{opacity:1;transform:none}}.cal-next{animation:.18s ease-out cal-in-next}.cal-prev{animation:.18s ease-out cal-in-prev}.my-cal,.mh{touch-action:pan-y}input,select,textarea,button{font:inherit;letter-spacing:inherit}.field{margin-bottom:14px;display:block}.field>span{color:var(--text-soft);margin-bottom:6px;font-size:13px;font-weight:550;display:block}input[type=text],input[type=tel],input[type=password],input[type=email],input[type=time],input[type=date],input[type=number],input[type=search],input[type=url],input:not([type]),select,textarea{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:100%;color:var(--text);box-shadow:var(--shadow-xs);transition:border-color .16s var(--ease), box-shadow .16s var(--ease);padding:11px 13px}input::placeholder,textarea::placeholder{color:var(--text-dim);opacity:.75}input:hover,select:hover,textarea:hover{border-color:var(--text-dim)}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring);outline:none}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-dim) 50%), linear-gradient(135deg, var(--text-dim) 50%, transparent 50%);background-position:calc(100% - 17px) calc(50% + 1px),calc(100% - 12px) calc(50% + 1px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:32px}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;box-shadow:var(--shadow-xs);transition:transform .12s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease), background .18s var(--ease), color .18s var(--ease);justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:550;display:inline-flex}.btn:hover{box-shadow:var(--shadow-sm);border-color:var(--text-dim);transform:translateY(-1px)}.btn:active{box-shadow:var(--shadow-xs);transform:translateY(0)}.btn:focus-visible{box-shadow:0 0 0 3px var(--brand-ring);outline:none}.btn:disabled{opacity:.55;cursor:default;box-shadow:var(--shadow-xs);transform:none}.btn-primary{background:var(--grad);color:var(--brand-ink);box-shadow:var(--shadow-brand);border-color:#0000;font-weight:600}.btn-primary:hover{filter:brightness(1.06);box-shadow:var(--shadow-brand), var(--shadow-sm);border-color:#0000}.btn-ghost{box-shadow:none;color:var(--text-soft);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2);box-shadow:none;border-color:#0000}.btn-danger{color:var(--danger)}.btn-danger:hover{border-color:var(--danger);background:var(--danger-soft)}.btn-sm{border-radius:8px;min-height:32px;padding:6px 12px;font-size:13px}.btn-block{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow .22s var(--ease), transform .22s var(--ease), border-color .22s var(--ease);animation:rise .3s var(--ease) both;margin-bottom:14px;padding:16px 18px}.card-hover:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-flat{box-shadow:none}.card-accent{border-color:color-mix(in srgb, var(--brand) 45%, var(--border));background-image:var(--grad-soft)}.card>h2:first-child{margin-top:0}.card>:last-child{margin-bottom:0}.row{align-items:center;gap:10px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.stack{flex-direction:column;gap:10px;display:flex}.wrap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grid{grid-template-columns:1fr;gap:14px;display:grid}.grid>.card{margin-bottom:0}.row-between>.wrap{flex-wrap:nowrap;flex:none}@media (width<=560px){.slice-head{flex-wrap:wrap}.slice-head>.wrap{flex-wrap:wrap;flex:1 0 100%;justify-content:flex-start}.slice-head select{flex:140px;min-width:0}.slice-head input[type=date]{flex:120px;min-width:0}}.lab-head>.wrap{justify-content:flex-end}@media (width<=560px){.lab-head{flex-wrap:wrap}.lab-head>.wrap{flex-wrap:wrap;flex:1 0 100%;justify-content:flex-start}}.share{flex-wrap:wrap;flex:none;align-items:center;gap:6px;display:inline-flex}.share>.btn{white-space:nowrap}.share-said{word-break:break-all;flex:1 0 100%;font-size:13px}@media (width<=560px){.person-row{flex-direction:column;align-items:stretch}.person-row>.wrap{flex-wrap:wrap}}@media (width>=640px){.grid-2{grid-template-columns:1fr 1fr}}.divide>*+*{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text-soft);transition:all .16s var(--ease);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:550;display:inline-flex}.chip-on{background:var(--grad);color:var(--brand-ink);box-shadow:var(--shadow-brand);border-color:#0000}.chip-btn{cursor:pointer;-webkit-user-select:none;user-select:none}.chip-btn:hover{border-color:var(--brand);color:var(--brand)}.chip-on.chip-btn:hover{color:var(--brand-ink);filter:brightness(1.06)}.chip-ok{background:var(--ok-soft);color:var(--ok);border-color:#0000}.chip-warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.chip-adm{background:var(--adm-soft);color:var(--adm);border-color:#0000}.chip-chg{background:var(--brand-soft,var(--surface-2));color:var(--brand);border-color:var(--brand)}.chip-danger{background:var(--danger-soft);color:var(--danger);border-color:#0000}.badge{background:var(--danger);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.appt-time{white-space:nowrap}.dot{background:var(--brand);border-radius:50%;flex:none;width:7px;height:7px}.alert{border-radius:var(--radius-sm);animation:rise .26s var(--ease) both;border:1px solid #0000;margin-bottom:14px;padding:11px 14px;font-size:14px}.alert-err{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.alert-ok{background:var(--ok-soft);color:var(--ok);border-color:color-mix(in srgb, var(--ok) 30%, transparent)}.alert-info{background:var(--surface-2);color:var(--text-soft);border-color:var(--border)}.alert-warn{background:var(--warn-soft);color:var(--warn);border-color:color-mix(in srgb, var(--warn) 32%, transparent)}.pw-nag{max-width:940px;margin:14px 16px -4px;font-weight:550;text-decoration:none;display:block}.empty{text-align:center;color:var(--text-dim);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-sunken);padding:36px 16px}.mono{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.mono-box{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:10px;padding:10px 12px}.skel{background:var(--surface-sunken);background-image:linear-gradient(90deg, transparent 0, color-mix(in srgb, var(--text) 7%, transparent) 50%, transparent 100%);background-repeat:no-repeat;background-size:260px 100%;border-radius:8px;height:12px;animation:1.25s linear infinite shimmer}.skel+.skel{margin-top:9px}.skel-title{width:42%;height:15px}.skel-line{width:100%}.skel-line-sm{width:62%}.auth-wrap{min-height:100%;padding:32px 16px calc(32px + env(safe-area-inset-bottom));background:radial-gradient(760px 420px at 50% -8%, var(--grad-halo,#00b4d81a), transparent 68%), var(--bg);justify-content:center;align-items:center;display:flex}:root[data-theme=dark] .auth-wrap{--grad-halo:#22d3ee1a}.auth-box{width:100%;max-width:392px;animation:rise .4s var(--ease) both}.auth-box .card{box-shadow:var(--shadow-lg);border-radius:var(--radius-lg);padding:22px}.logo{letter-spacing:-.03em;justify-content:center;align-items:center;gap:9px;margin-bottom:6px;font-size:27px;font-weight:700;display:flex}.logo-mark{background:var(--grad);width:38px;height:38px;box-shadow:var(--shadow-brand);border-radius:11px;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.logo-text{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.auth-sub{text-align:center;color:var(--text-dim);margin:0 0 22px;font-size:14px}.auth-foot{text-align:center;color:var(--text-dim);margin-top:16px;font-size:13px}.app{background:var(--bg);min-height:100%;display:flex}.sidebar{display:none}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:5;padding:calc(11px + env(safe-area-inset-top)) 18px 11px;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar .title{letter-spacing:-.01em;font-weight:650}.topbar select{width:auto;min-height:34px;box-shadow:none;padding:6px 30px 6px 11px;font-size:13px}.content{width:100%;max-width:940px;padding:18px 16px calc(var(--nav-h) + 28px + env(safe-area-inset-bottom));flex:1}.bottom-nav{z-index:10;border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(180%)blur(14px);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -1px 0 var(--border), 0 -8px 24px -18px #0a254080;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{height:var(--nav-h);color:var(--text-dim);transition:color .18s var(--ease);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:550;display:flex;position:relative}.bottom-nav a:before{content:"";background:var(--grad);width:26px;height:2.5px;transition:transform .25s var(--ease);border-radius:0 0 3px 3px;position:absolute;top:0;left:50%;transform:translate(-50%)scaleX(0)}.bottom-nav a.active{color:var(--brand)}.bottom-nav a.active:before{transform:translate(-50%)scaleX(1)}.nav-ico{justify-content:center;align-items:center;width:21px;height:21px;display:inline-flex}.nav-ico svg{width:21px;height:21px}.nav-label{align-items:center;gap:4px;display:inline-flex}.save-bar{bottom:calc(var(--nav-h) + 12px + env(safe-area-inset-bottom));z-index:5;position:sticky}@media (width>=860px){.save-bar{bottom:16px}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex:0 0 244px;gap:3px;width:244px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.sidebar .brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:9px;padding:4px 10px 20px;font-size:18px;font-weight:700;display:flex}.sidebar .brand .logo-mark{border-radius:9px;width:30px;height:30px;font-size:16px}.sidebar a{border-radius:var(--radius-sm);color:var(--text-soft);transition:background .16s var(--ease), color .16s var(--ease);align-items:center;gap:11px;padding:9px 11px;font-size:14px;font-weight:550;display:flex}.sidebar a:hover{background:var(--surface-2);color:var(--text)}.sidebar a.active{background:var(--grad-soft);color:var(--brand)}.sidebar a .badge{margin-left:auto}.sidebar-foot{color:var(--text-dim);margin-top:auto;padding:10px;font-size:12px}.bottom-nav{display:none}.content{padding:26px 30px 48px}.content>.btn-block{width:auto}h1{font-size:27px}}.bars{align-items:flex-end;gap:4px;height:72px;margin-top:12px;display:flex}.bars .bar{background:var(--grad);opacity:.85;min-width:0;max-width:46px;transition:opacity .16s var(--ease), transform .16s var(--ease);border-radius:5px 5px 3px 3px;flex:1 1 0;align-self:flex-end}.bars .bar:hover{opacity:1;transform:translateY(-2px)}.bars .bar-empty{background:var(--surface-sunken);opacity:1}.bars .bar-today{box-shadow:var(--shadow-brand);opacity:1}.bars-axis{color:var(--text-dim);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.share{margin-top:12px}.share:first-of-type{margin-top:6px}.share-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:550;overflow:hidden}.share-sum{white-space:nowrap;font-size:14px;font-weight:600}.share-track{background:var(--surface-sunken);border-radius:4px;height:7px;margin:6px 0 4px;overflow:hidden}.share-fill{background:var(--grad);height:100%;transition:width .3s var(--ease);border-radius:4px}.delta-up{color:var(--ok);font-weight:600}.delta-down{color:var(--danger);font-weight:600}.delta-none{color:var(--text-dim);cursor:help;font-weight:500}.metric{letter-spacing:-.02em;font-size:26px;font-weight:650}.metric-sm{letter-spacing:-.01em;font-size:19px;font-weight:650}.feed-ico{background:var(--surface-2);border:1px solid var(--border);width:26px;height:26px;color:var(--text-soft);border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.topbar-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.topbar .title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.topbar-right{flex:none;align-items:center;gap:8px;display:flex}.topbar-right>.chip{display:none}.icon-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-soft);cursor:pointer;transition:background .16s var(--ease), color .16s var(--ease);background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn .dot{width:6px;height:6px;position:absolute;top:6px;right:6px}.nav-group+.nav-group{margin-top:14px}.nav-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);padding:0 11px 6px;font-size:11px;font-weight:650}.more-btn{height:var(--nav-h);color:var(--text-dim);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:0;font-family:inherit;font-size:11px;font-weight:550;display:flex}.more-btn:hover{color:var(--text)}.drawer-root{z-index:40;pointer-events:none;position:fixed;inset:0}.drawer-root.open{pointer-events:auto}.drawer-overlay{opacity:0;transition:opacity .22s var(--ease);-webkit-backdrop-filter:blur(2px);background:#0a25406b;position:absolute;inset:0}.drawer-root.open .drawer-overlay{opacity:1}.drawer{background:var(--surface);border-right:1px solid var(--border);width:min(310px,86vw);box-shadow:var(--shadow-lg);padding:calc(14px + env(safe-area-inset-top)) 12px calc(14px + env(safe-area-inset-bottom));transition:transform .26s var(--ease);outline:none;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-102%)}.drawer-root.open .drawer{transform:translate(0)}.drawer-head{justify-content:space-between;align-items:center;gap:8px;padding:0 4px 4px;display:flex}.drawer-head .brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:9px;font-size:18px;font-weight:700;display:flex}.drawer-head .brand .logo-mark{border-radius:9px;width:30px;height:30px;font-size:16px}.drawer-user{border-bottom:1px solid var(--border);margin-bottom:14px;padding:10px 11px 14px}.drawer-user-name{margin-bottom:6px;font-size:14px;font-weight:600}.drawer-user select{width:100%;min-height:36px;padding:6px 30px 6px 10px;font-size:13px}.drawer-nav{flex-direction:column;gap:3px;display:flex}.drawer-nav a{border-radius:var(--radius-sm);color:var(--text-soft);transition:background .16s var(--ease), color .16s var(--ease);align-items:center;gap:11px;padding:10px 11px;font-size:14.5px;font-weight:550;display:flex}.drawer-nav a:hover{background:var(--surface-2);color:var(--text)}.drawer-nav a.active{background:var(--grad-soft);color:var(--brand)}.drawer-nav a .badge{margin-left:auto}@media (prefers-reduced-motion:reduce){.drawer,.drawer-overlay{transition:none}}@media (width>=860px){.burger,.drawer-root{display:none}.topbar-right>.chip{display:inline-flex}}.sh-card{border-left:3px solid var(--border-strong)}.sh-card.sh-need{border-left-color:var(--warn)}.sh-card.sh-ok{border-left-color:var(--ok)}.sh-card.sh-cancelled{border-left-color:var(--border-strong);opacity:.7}.sh-cal,.sh-cal-head{display:none}.sh-detail{margin-top:14px}@media (width>=860px){.sh-cal-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:6px;font-size:11px;display:grid}.sh-cal{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.sh-mob{display:none}}.sh-day{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:104px;box-shadow:var(--shadow-xs);padding:6px}.sh-day.sh-empty{box-shadow:none;background:0 0;border-color:#0000}.sh-day.sh-today{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.sh-day.sh-linked{border:2px solid var(--brand);box-shadow:0 0 0 4px var(--brand-ring);background:color-mix(in srgb, var(--brand) 8%, var(--surface));border-style:solid}[data-daylinked]{scroll-margin-top:72px}.sh-gday-linked>.section-title{color:var(--brand);border-left:3px solid var(--brand);padding-left:8px}.sh-day.sh-dayoff{background:var(--surface-2,transparent);box-shadow:none;border-style:dashed}.sh-day.sh-dayoff .sh-day-num{opacity:.6}.sh-day.sh-dayshort{border-color:var(--warn)}.sh-day.sh-dayshort .sh-day-note{color:var(--warn)}.sh-day-num{color:var(--text-dim);font-size:12px;font-weight:600}.sh-day-note{text-transform:none;letter-spacing:0;font-weight:500}.sh-gday-off .sh-card{background:var(--surface-2,var(--surface));box-shadow:none;border-style:dashed dashed dashed solid}.sh-gday-off .section-title{opacity:.75}.alert.sh-warn-ok{background:var(--surface-2);color:var(--text-soft);border-color:var(--border)}.sh-pill{text-align:left;width:100%;font:inherit;color:var(--text);border:1px solid var(--border);background:var(--surface-sunken);cursor:pointer;transition:transform .12s var(--ease), box-shadow .12s var(--ease);border-radius:8px;margin-top:4px;padding:4px 6px;font-size:12px;line-height:1.25;display:block}.sh-pill:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.sh-pill.sh-need{background:var(--warn-soft);border-color:var(--warn)}.sh-pill.sh-ok{background:var(--ok-soft);border-color:var(--ok)}.sh-pill.sh-cancelled{opacity:.55;text-decoration:line-through}.sh-pill.sh-adm{background:var(--adm-soft);border-color:var(--adm)}.sh-pill.sh-adm.sh-need{background:var(--warn-soft);border-color:var(--warn);border-left:3px solid var(--adm)}.sh-pill.sh-sel{box-shadow:0 0 0 3px var(--brand-ring);border-color:var(--brand)}.sh-pill-sub{color:var(--text-soft);font-size:11px;display:block}.sh-pill.sh-pill-over{border-color:var(--warn);border-left:3px solid var(--warn)}.sh-over-mark{text-align:center;width:13px;height:13px;color:var(--warn);border:1px solid var(--warn);vertical-align:1px;border-radius:50%;margin-right:4px;font-size:10px;font-weight:700;line-height:13px;display:inline-block}.sh-pill.sh-pill-off{border-color:var(--warn);border-left:3px solid var(--warn)}.sh-pill-sub.sh-sub-off{color:var(--warn);text-decoration:line-through}.sh-pill.sh-pill-chg{border-left:3px solid var(--brand)}.sh-chg-mark,.my-chg-mark{color:var(--brand);vertical-align:1px;font-size:10px;line-height:1;display:inline-block}.sh-chg-mark{margin-right:4px}.my-chg-mark{margin-left:3px;font-size:9px}.my-chip.my-chip-chg{border-left:3px solid var(--brand)}.sh-off{color:var(--text-dim);background:var(--surface-2);border-radius:8px;margin-top:4px;padding:2px 6px;font-size:11px}.sh-card select{flex:0 260px;max-width:100%}.my-cal-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;font-size:10px;display:grid}.my-cal{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.my-cell{min-height:62px;font:inherit;text-align:center;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-xs);cursor:pointer;transition:border-color .12s var(--ease), box-shadow .12s var(--ease);flex-direction:column;gap:2px;padding:4px 3px;display:flex;overflow:hidden}.my-cell.my-void{box-shadow:none;cursor:default;background:0 0;border-color:#0000}.my-cell.my-past{opacity:.6}.my-cell.my-today .my-num{color:var(--brand-ink);background:var(--brand)}.my-cell.my-sel{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}@media (hover:hover){.my-cell:hover:not(.my-void){border-color:var(--brand)}}.my-num{min-width:20px;height:20px;color:var(--text-dim);border-radius:10px;justify-content:center;align-self:center;align-items:center;padding:0 5px;font-size:12px;font-weight:600;display:inline-flex}.my-chip{color:var(--slot-ink,var(--text));background:var(--slot-bg,var(--surface-sunken));border:1px solid var(--slot-line,var(--border));text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:2px 3px;font-size:10px;font-weight:600;line-height:1.2;display:block;overflow:hidden}.my-chip.my-need{border-style:dashed}.my-chip-time{display:none}.my-shift{display:block}.my-chip-who{color:var(--text-dim);flex-direction:column;margin-top:1px;font-size:9px;line-height:1.2;display:flex}.my-chip-who>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.my-who-ini{display:none}.my-off{color:var(--text-dim);background:var(--surface-sunken);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:2px 3px;font-size:10px;line-height:1.2;overflow:hidden}.my-sum{padding:10px 12px}.my-legend{gap:6px;margin:10px 0 2px}.my-key{color:var(--slot-ink,var(--text));background:var(--slot-bg,var(--surface-sunken));border:1px solid var(--slot-line,var(--border));border-radius:999px;align-items:baseline;gap:5px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.my-slot-0{--slot-bg:var(--brand-soft);--slot-line:var(--brand);--slot-ink:var(--brand)}.my-slot-1{--slot-bg:var(--warn-soft);--slot-line:var(--warn);--slot-ink:var(--warn)}.my-slot-2{--slot-bg:var(--ok-soft);--slot-line:var(--ok);--slot-ink:var(--ok)}.my-slot-3{--slot-bg:var(--brand-soft);--slot-line:var(--brand-2);--slot-ink:var(--text-soft)}.my-slot-adm{--slot-bg:var(--adm-soft);--slot-line:var(--adm);--slot-ink:var(--adm)}.my-slot-n{--slot-bg:var(--surface-sunken);--slot-line:var(--border-strong);--slot-ink:var(--text-soft)}.my-free{color:var(--warn);align-items:center;gap:4px;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex}.my-free-dot{background:var(--warn-soft);border:1px solid var(--warn);min-width:16px;height:16px;color:var(--warn);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex}.my-free-txt{display:none}.my-cell.my-offday{background:var(--surface-sunken)}.my-cell.my-offday .my-num{text-decoration:line-through}.my-cell.my-clash{background:var(--warn-soft);border-color:var(--warn)}.my-cell.my-clash .my-num{color:var(--warn);text-decoration:none}.my-chip.my-chip-off{border-color:var(--warn);border-left:3px solid var(--warn)}.my-clash-txt{color:var(--warn);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:1px 2px;font-size:9px;font-weight:700;line-height:1.2;display:block;overflow:hidden}.my-key-clash{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.my-cell.my-closed{border-style:dashed;border-color:var(--border-strong);background:var(--surface-2,var(--surface));box-shadow:none}.my-cell.my-closed .my-num{opacity:.6}.my-closed-txt{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.15;overflow:hidden}.my-cell.my-short{border-color:var(--warn)}.my-cell.my-short .my-closed-txt{color:var(--warn)}.my-cell.my-clash.my-closed{background:var(--warn-soft);border-color:var(--warn)}.my-cell.my-clash .my-closed-txt{color:var(--warn)}.my-key-short{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}.my-key-free{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.my-key-closed{background:var(--surface-2,var(--surface));border-style:dashed;border-color:var(--border-strong);color:var(--text-dim)}.my-key-off{background:var(--surface-sunken);border-color:var(--border-strong);color:var(--text-dim);text-decoration:line-through}.sheet-wrap{z-index:60;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet-back{background:#00000073;position:absolute;inset:0}.sheet{background:var(--surface);border-top:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;max-height:82vh;animation:sheet-up .16s var(--ease);flex-direction:column;display:flex;position:relative;box-shadow:0 -12px 32px #00000047}@keyframes sheet-up{0%{opacity:.6;transform:translateY(14px)}to{opacity:1;transform:none}}.sheet-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.sheet-body{-webkit-overflow-scrolling:touch;padding:4px 14px 16px;overflow:auto}@media (width>=720px){.sheet-wrap{justify-content:center;align-items:center}.sheet{border-radius:var(--radius);border:1px solid var(--border);width:min(560px,92vw);max-height:80vh}}@media (width>=560px){.my-cal-head,.my-cal{gap:6px}.my-cell{text-align:left;min-height:92px;padding:6px}.my-num{align-self:flex-start}.my-chip{padding:3px 6px;font-size:12px}.my-chip-time{float:right;opacity:.8;font-weight:500;display:inline}.my-chip-who{flex-direction:row;gap:4px;font-size:10px}.my-who-ini{display:inline}.who-both .my-who-chair{flex:none}.who-both .my-who-chair:before{content:"· "}.my-off,.my-free{font-size:11px}.my-free-txt{display:inline}}.ch-row{align-items:center;gap:12px;display:flex}.ch-ava{background:var(--grad-soft);width:40px;height:40px;color:var(--brand);border-radius:12px;flex:0 0 40px;justify-content:center;align-items:center;font-size:17px;font-weight:700;display:flex}.ch-ava-star{background:var(--warn-soft);color:#d99a00}:root[data-theme=dark] .ch-ava-star{color:#ffc63d}.ch-ava.dm{background:var(--brand);color:#fff;border-radius:50%;font-size:14px}.chat-head .ch-ava{flex-basis:32px;width:32px;height:32px;font-size:12px}button.ch-row{text-align:left;width:100%}.ch-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ch-name{color:var(--text)}.ch-unread .ch-name{font-weight:700}.ch-preview{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);font-size:13px;overflow:hidden}.ch-draft{color:var(--danger);font-weight:600}.ch-ticks{margin:0 5px 0 0}.ch-ticks small{letter-spacing:0;margin-left:4px;font-size:11px}.chat-search{align-items:center;gap:8px;display:flex}.chat-search input{flex:1;min-width:0}.ch-preview mark{background:var(--brand-soft);color:var(--text);border-radius:4px;padding:0 2px}.chat-msg.found .chat-bubble,.chat-sys.found{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.chat-sys.found{border:1px solid var(--brand);border-radius:12px}.chat-find{border-bottom:1px solid var(--border);background:var(--surface-2);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.icon-btn.on{background:var(--brand-soft);color:var(--brand)}.chat-find-list{flex-direction:column;gap:6px;max-height:42vh;display:flex;overflow-y:auto}.chat-find-row{text-align:left;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);cursor:pointer;font:inherit;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.chat-find-row:hover{background:var(--surface-2)}.chat-find-row.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.chat-find-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);font-size:13px;overflow:hidden}.chat-find-text mark{background:var(--brand-soft);color:var(--text);border-radius:4px;padding:0 2px}.chat-pins{top:calc(106px + env(safe-area-inset-top));z-index:3;border-bottom:1px solid var(--border);background:var(--surface-2);margin:-10px -2px 10px;position:sticky}.chat-pane .chat-pins{position:static}.chat-pin-bar{align-items:center;gap:6px;padding:6px 10px;display:flex}.chat-pin-main{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;border:0;border-left:2px solid var(--brand);background:0 0;flex:1;align-items:center;gap:8px;padding:2px 0 2px 8px;display:flex}.chat-pin-main svg{color:var(--brand);flex:none}.chat-pin-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.chat-pin-text b{color:var(--brand);font-size:12px}.chat-pin-text span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);font-size:13px;overflow:hidden}.chat-pin-count{min-width:34px}.chat-pin-list{flex-direction:column;gap:6px;max-height:40vh;padding:0 10px 10px;display:flex;overflow-y:auto}.chat-pin-row{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;gap:4px;padding:2px 4px 2px 0;display:flex}.chat-pin-row.on{border-color:var(--brand)}.chat-pin-row-main{text-align:left;min-width:0;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;gap:2px;padding:8px 10px;display:flex}.chat-pin-row-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);font-size:13px;overflow:hidden}.chat-pinned-mark{vertical-align:-1px;opacity:.75;margin-right:3px;display:inline-flex}.badge-mention{background:var(--danger);color:#fff}.ch-body small{white-space:nowrap}.chat{flex-direction:column;min-height:calc(100dvh - 190px);display:flex}@media (width>=860px){.chat{min-height:calc(100dvh - 150px)}}.chat-body{flex-direction:column;flex:1;display:flex}.chat2{grid-template-columns:296px minmax(0,1fr);gap:18px;height:calc(100dvh - 150px);min-height:360px;display:grid}.chat2-list{overscroll-behavior:contain;flex-direction:column;gap:8px;min-height:0;margin-right:-6px;padding-right:6px;display:flex;overflow-y:auto}.chat2-list .stack{gap:8px}.chat2-list .ch-row{padding:10px 12px}.chat2-list .ch-ava{border-radius:10px;flex-basis:34px;width:34px;height:34px;font-size:14px}.chat2-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.chat2-pane>.empty{margin:auto}.chat-pane{height:100%;min-height:0}.chat-pane .chat-head{margin-top:0;position:static}.chat-pane .chat-body{overscroll-behavior:contain;min-height:0;padding-right:6px;overflow-y:auto}.chat-pane .chat-composer{margin-top:10px;position:static;bottom:auto}.ch-active{border-color:var(--brand);background:var(--grad-soft)}.chat-head{top:calc(53px + env(safe-area-inset-top));z-index:4;background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:10px;margin:-6px -2px 10px;padding:8px 2px;display:flex;position:sticky}.chat-head small{display:none}@media (width>=860px){.chat-head small{display:block}}.chat-head select{width:auto;min-height:34px;box-shadow:none;padding:5px 28px 5px 10px;font-size:12px}.chat-title{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}@media (width<=560px){.chat-head{gap:6px}.chat-head select{max-width:104px;padding-right:22px}}.chat-head-title{text-align:left;min-width:0;box-shadow:none;color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;flex:1;min-height:0;padding:2px 0}.chat-head-title:hover .chat-title{color:var(--brand)}.chat-log{flex-direction:column;flex:1;gap:3px;display:flex}.chat-day{justify-content:center;margin:14px 0 8px;display:flex}.chat-day span{color:var(--text-dim);background:var(--surface-sunken);border-radius:999px;padding:3px 11px;font-size:12px}.chat-sys{text-align:center;max-width:92%;color:var(--text-soft);background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius);align-self:center;margin:6px 0;padding:8px 12px;font-size:13px}.chat-sys-link{margin-top:4px;font-size:13px;font-weight:550;display:inline-block}.chat-msg{align-items:flex-end;gap:8px;max-width:100%;display:flex}.chat-msg.mine{flex-direction:row-reverse}.chat-msg.grouped{margin-top:-1px}.chat-msg.grouped .chat-ava{visibility:hidden}.chat-ava{background:var(--surface-sunken);width:28px;height:28px;color:var(--text-dim);border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;font-size:11px;font-weight:650;display:flex}.chat-bubble{background:var(--surface);border:1px solid var(--border);max-width:min(78%,560px);box-shadow:var(--shadow-xs);border-radius:14px;padding:7px 11px 5px;position:relative}.chat-msg.mine .chat-bubble{background:var(--brand-soft);border-color:color-mix(in srgb, var(--brand) 22%, transparent)}.chat-bubble.hit{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.chat-author{color:var(--brand);margin-bottom:2px;font-size:12px;font-weight:650}.chat-text{white-space:pre-wrap;word-break:break-word;font-size:14.5px}.chat-time{color:var(--text-dim);text-align:right;margin-top:2px;font-size:11px}.chat-edited{margin-left:5px;font-style:italic}.chat-ticks{letter-spacing:-2px;color:var(--text-dim);margin-left:5px}.chat-ticks.read{color:var(--brand)}.chat-ticks-btn{font:inherit;cursor:pointer;color:var(--text-dim);background:0 0;border:0;padding:0 0 0 5px}.chat-ticks-btn:hover,.chat-ticks-btn.read{color:var(--brand)}.chat-ticks-btn small{letter-spacing:0;margin-left:3px;font-size:11px}.chat-newline{align-items:center;gap:8px;margin:12px 2px 6px;display:flex}.chat-newline:before,.chat-newline:after{content:"";background:var(--brand);opacity:.35;flex:1;height:1px}.chat-newline span{color:var(--brand);white-space:nowrap;font-size:12px;font-weight:600}.chat-typing{color:var(--text-soft);align-items:center;gap:7px;padding:2px 12px 4px;font-size:12px;display:flex}.chat-typing-dots{gap:3px;display:inline-flex}.chat-typing-dots i{background:var(--text-dim);border-radius:50%;width:4px;height:4px;animation:1.1s ease-in-out infinite chat-typing-bounce}.chat-typing-dots i:nth-child(2){animation-delay:.15s}.chat-typing-dots i:nth-child(3){animation-delay:.3s}@keyframes chat-typing-bounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.chat-typing-dots i{animation:none}}.chat-unread-row{opacity:.55}.chat-gone{color:var(--text-dim);font-style:italic}.chat-msg.gone .chat-bubble{background:var(--surface-sunken);border-style:dashed}.chat-bubble.editing{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}.chat-act{flex:0 0 26px;align-self:flex-start;position:relative}.chat-act-btn{width:26px;height:26px;color:var(--text-dim);opacity:0;border-radius:50%;transition:opacity .12s}.chat-msg:hover .chat-act-btn,.chat-act-btn:focus-visible,.chat-act-btn[aria-expanded=true]{opacity:1}@media (hover:none){.chat-act-btn{opacity:.55}}.chat-menu{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:132px;box-shadow:var(--shadow-md);flex-direction:column;padding:4px;display:flex;position:absolute;top:28px;right:0;overflow:hidden}.chat-msg.mine .chat-menu{left:0;right:auto}.chat-menu.up{top:auto;bottom:28px}.chat-menu button{text-align:left;cursor:pointer;color:var(--text);font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:9px 12px;font-size:14px}.chat-menu button:hover{background:var(--surface-2)}.chat-menu button.danger{color:var(--danger)}.chat-quote{text-align:left;cursor:pointer;background:color-mix(in srgb, var(--brand) 7%, transparent);border:0;border-left:3px solid var(--brand);width:100%;min-width:0;color:inherit;font:inherit;border-radius:7px;flex-direction:column;gap:1px;margin:0 0 5px;padding:4px 8px;display:flex}.chat-quote:hover{background:color-mix(in srgb, var(--brand) 13%, transparent)}.chat-quote.gone{border-left-color:var(--border-strong)}.chat-quote-author{color:var(--brand);font-size:12px;font-weight:650}.chat-quote.gone .chat-quote-author{color:var(--text-dim)}.chat-quote-text{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.chat-fwd{color:var(--text-dim);align-items:center;gap:5px;margin:0 0 4px;font-size:12px;display:flex}.chat-fwd b{color:var(--text-soft);font-weight:650}.fwd-preview{background:var(--surface-sunken);border-left:3px solid var(--brand);color:var(--text-soft);text-overflow:ellipsis;border-radius:8px;flex:none;padding:8px 10px;font-size:13.5px;overflow:hidden}.fwd-row{text-align:left;width:100%}.fwd-row.on{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 9%, var(--surface))}.fwd-tick{border:1.5px solid var(--border-strong);color:#0000;border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;display:flex}.fwd-tick.on{border-color:var(--brand);background:var(--brand);color:#fff}.sheet-foot{padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;display:flex}.chat-replying .chat-editing-body{text-align:left;cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;padding:0}.chat-editing{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-xs);align-items:center;gap:8px;margin-bottom:6px;padding:7px 10px;display:flex}.chat-editing-body{flex-direction:column;flex:1;min-width:0;display:flex}.chat-editing-body strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.mention{color:var(--brand);font-weight:650}.chat-composer{z-index:5;bottom:calc(var(--nav-h) + 8px + env(safe-area-inset-bottom));margin-top:12px;position:sticky}@media (width>=860px){.chat-composer{bottom:12px}}.chat-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);align-items:flex-end;gap:8px;padding:6px;display:flex}.chat-input textarea{resize:none;min-height:38px;max-height:150px;box-shadow:none;font:inherit;color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:8px 6px}.chat-send{flex:none;width:40px;height:38px;padding:0}.chat-mentions{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);flex-direction:column;margin-bottom:6px;display:flex;overflow:hidden}.chat-mentions button{text-align:left;cursor:pointer;width:100%;color:var(--text);font:inherit;background:0 0;border:0;align-items:baseline;gap:8px;padding:8px 12px;display:flex}.chat-mentions button:hover{background:var(--surface-2)}.chat-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-width:300px;margin:2px 0 4px;display:grid}.chat-photos.one{grid-template-columns:minmax(0,1fr);max-width:260px}.chat-photo{background:var(--surface-sunken);cursor:zoom-in;border:0;border-radius:10px;padding:0;line-height:0;overflow:hidden}.chat-photo img{object-fit:cover;width:100%;height:100%;display:block}.chat-photos:not(.one) .chat-photo{aspect-ratio:1}.chat-photos.one .chat-photo img{object-fit:contain;background:var(--surface-sunken);max-height:340px}.chat-att-rm{line-height:0;display:block;position:relative}.chat-att-rm>.chat-photo{width:100%}.chat-att-rm>.chat-draft-x{z-index:2}.chat-att-rm>.chat-draft-x:disabled{opacity:.5;cursor:default}.chat-photos .chat-att-rm{min-width:0}.chat-photos:not(.one) .chat-att-rm>.chat-photo{aspect-ratio:1}.chat-file{background:var(--surface-sunken);border:1px solid var(--border);max-width:300px;color:inherit;border-radius:10px;flex-direction:column;gap:8px;margin:2px 0 4px;padding:8px 10px;text-decoration:none;display:flex}.chat-file-row{align-items:center;gap:10px;display:flex}.chat-file:hover{border-color:var(--brand)}.chat-file-prev{border:1px solid var(--border);background:#fff;border-radius:8px;height:190px;line-height:0;display:block;overflow:hidden}.chat-file-prev img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.chat-file-prev-skel{width:100%;height:100%;display:block}.chat-file-ico{background:var(--surface-2);width:38px;height:38px;color:var(--brand);border-radius:9px;flex:none;place-items:center;display:grid;position:relative}.chat-file-ico em{letter-spacing:.02em;background:var(--brand);color:#fff;border-radius:4px;padding:0 3px;font-size:8.5px;font-style:normal;font-weight:700;position:absolute;bottom:-3px;right:-4px}.chat-file-meta{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.chat-file-meta b{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.chat-file-meta small{color:var(--text-dim);font-size:11.5px}.chat-draft-file{width:84px;height:84px;color:var(--brand);place-items:center;gap:2px;display:grid}.chat-draft-file em{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:76px;font-size:10px;font-style:normal;font-weight:700;overflow:hidden}.chat-drafts{gap:8px;padding:2px 2px 8px;display:flex;overflow-x:auto}.chat-draft{background:var(--surface-sunken);border:1px solid var(--border);border-radius:10px;flex:none;width:84px;position:relative;overflow:hidden}.chat-draft.bad{border-color:var(--danger)}.chat-draft img{object-fit:cover;width:84px;height:84px;display:block}.chat-draft img.chat-draft-pdf{object-position:top center;background:#fff}.chat-draft-x{cursor:pointer;color:#fff;background:#0000008c;border:0;border-radius:50%;width:22px;height:22px;padding:0;font-size:16px;line-height:1;position:absolute;top:2px;right:2px}.chat-draft-cap{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;padding:2px 5px;font-size:10.5px;display:block;overflow:hidden}.chat-draft.bad .chat-draft-cap{color:var(--danger)}.chat-draft-wait{background:linear-gradient(90deg, transparent, var(--brand), transparent);background-size:200% 100%;height:3px;animation:1.1s linear infinite draft-wait;position:absolute;bottom:22px;left:0;right:0}@keyframes draft-wait{0%{background-position:100% 0}to{background-position:-100% 0}}.chat-clip{flex:none;align-self:flex-end;height:38px}.drop-hint{z-index:55;pointer-events:none;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#00000059;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.drop-hint-card{text-align:center;border-radius:var(--radius);background:var(--surface);color:var(--text);border:2px dashed var(--brand);box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:6px;padding:22px 26px;display:flex}.drop-hint-card small{color:var(--text-soft)}.drop-on{outline:2px dashed var(--brand);outline-offset:2px;background:color-mix(in srgb, var(--brand) 7%, var(--surface))}.drop-on:after{content:"Отпустите — прикрепим";color:var(--brand);text-align:center;margin-top:8px;font-size:13px;display:block}.lightbox{z-index:60;background:#000000e0;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-bar{padding:10px 12px calc(10px + env(safe-area-inset-top));color:#fff;background:linear-gradient(#0000008c,#0000);justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;top:0;left:0;right:0}.lightbox-name{opacity:.85;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.lightbox-img{object-fit:contain;border-radius:6px;max-width:96vw;max-height:86vh}.chat-share{background:var(--surface);border:1px solid var(--border-strong);border-left:3px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-md);align-items:center;gap:10px;margin-bottom:8px;padding:8px 10px;display:flex}.chat-share-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.chat-share-body strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.25;display:-webkit-box;overflow:hidden}.chat-share .btn{white-space:nowrap;flex:none}.tl-scroll{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-height:calc(100dvh - 250px);box-shadow:var(--shadow-xs);overscroll-behavior:contain;position:relative;overflow:auto}.tl-grid{grid-template-columns:46px repeat(var(--tl-cols), minmax(150px, 1fr));min-width:min-content;display:grid}.tl-corner{z-index:3;background:var(--surface-2);border-right:1px solid var(--border);border-bottom:1px solid var(--border);position:sticky;top:0;left:0}.tl-doc{z-index:5;background:var(--surface-2);border-bottom:1px solid var(--border);border-right:1px solid var(--border);min-width:0;padding:7px 8px;position:sticky;top:0}.tl-doc:last-child{border-right:0}.tl-doc-fio{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.tl-doc-pos{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.tl-axis{z-index:1;height:var(--tl-h);background:var(--surface);border-right:1px solid var(--border);position:sticky;left:0}.tl-tick{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11px;position:absolute;right:6px;transform:translateY(-50%)}.tl-tick-h{color:var(--text-soft);font-weight:600}.tl-col{height:var(--tl-h);border-right:1px solid var(--border);min-width:0;position:relative}.tl-col:last-child{border-right:0}.tl-line{border-top:1px dashed var(--border);position:absolute;left:0;right:0}.tl-line-h{border-top-style:solid;border-top-color:var(--border-strong)}.tl-off{background-color:var(--bg-soft);background-image:repeating-linear-gradient(135deg,#808ca529 0 5px,#0000 5px 11px);position:absolute;left:0;right:0}.tl-lunch{z-index:1;pointer-events:none;background-color:color-mix(in srgb, var(--warn,#d08700) 9%, transparent);background-image:repeating-linear-gradient(45deg, color-mix(in srgb, var(--warn,#d08700) 16%, transparent) 0 6px, transparent 6px 13px);border-top:1px solid color-mix(in srgb, var(--warn,#d08700) 35%, transparent);border-bottom:1px solid color-mix(in srgb, var(--warn,#d08700) 35%, transparent);position:absolute;left:0;right:0}.tl-lunch-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);font-size:11px;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.tl-now{z-index:4;border-top:2px solid var(--danger);pointer-events:none;position:absolute;left:0;right:0}.tl-now:before{content:"";background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:-5px;left:0}.tl-empty-col{text-align:center;color:var(--text-dim);font-size:12px;position:absolute;top:10px;left:0;right:0}.tl-hint{margin:7px 2px 0;font-size:12px}.sched-closed{color:var(--text-soft);background:var(--surface-2);border:1px dashed var(--border);border-radius:10px;margin:0 0 12px;padding:6px 10px;font-size:13px;display:inline-block}.sched-special{color:var(--warn);background:var(--warn-soft);border:1px solid #0000;border-radius:10px;margin:0 0 12px;padding:6px 10px;font-size:13px;display:inline-block}.day-live:before{content:"";vertical-align:middle;width:6px;height:6px;animation:day-live-pulse 2.4s var(--ease) infinite;background:currentColor;border-radius:50%;margin:-2px 7px 0 0;display:inline-block}@keyframes day-live-pulse{0%,to{opacity:.3}50%{opacity:.95}}.tl-appt{z-index:2;text-align:left;font:inherit;color:var(--text);border:1px solid var(--slot-line,var(--border-strong));border-left:3px solid var(--slot-line,var(--border-strong));border-radius:var(--radius-sm);background:var(--slot-bg,var(--surface-2));cursor:pointer;transition:box-shadow .12s var(--ease), border-color .12s var(--ease);flex-direction:column;gap:1px;padding:3px 6px;display:flex;position:absolute;overflow:hidden}.tl-appt.st-planned{--slot-bg:var(--brand-soft);--slot-line:var(--brand)}.tl-appt.st-done{--slot-bg:var(--ok-soft);--slot-line:var(--ok)}.tl-appt.st-noshow{--slot-bg:var(--warn-soft);--slot-line:var(--warn)}.tl-appt.tl-sel{box-shadow:0 0 0 2px var(--brand-ring)}.tl-write{z-index:4;color:var(--text);border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow-sm);animation:rise .12s var(--ease) both;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute}@media (hover:hover){.tl-write:hover{color:var(--brand);border-color:var(--brand)}.tl-appt:hover{box-shadow:var(--shadow-sm)}}.tl-appt.tl-tight{flex-direction:row;align-items:baseline;gap:6px;padding:1px 6px}.tl-appt.tl-tight .tl-appt-dur{display:none}.tl-appt-top{align-items:baseline;gap:6px;display:flex}.tl-appt-time{font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.tl-appt-dur{color:var(--text-dim);font-size:10px}.tl-appt-fio{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.25;overflow:hidden}.tl-appt-title{color:var(--text-soft);text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.2;display:-webkit-box;overflow:hidden}.tl-appt-marks{flex-wrap:wrap;gap:4px;margin-top:1px;display:flex}.tl-mark{background:var(--surface);color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:0 5px;font-size:10px;font-style:normal;line-height:1.4}.tl-mark-first{color:var(--brand);border-color:var(--brand-ring)}.tl-mark-online{color:var(--ok);border-color:var(--ok)}.tl-mark-danger{color:var(--danger);background:var(--danger-soft);border-color:#0000}.tl-mark-warn{color:var(--warn);background:var(--warn-soft);border-color:#0000}.tl-mark-info{color:var(--text-soft)}.tl-flag{background:var(--surface);color:var(--text-dim);border:1px solid var(--border);border-radius:999px;flex:none;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;line-height:1.4}.tl-flag-danger{color:var(--danger);background:var(--danger-soft);border-color:#0000}.tl-flag-warn{color:var(--warn);background:var(--warn-soft);border-color:#0000}.tl-grid.tl-week{grid-template-columns:40px repeat(var(--tl-cols), minmax(92px, 1fr))}.tl-day{width:100%;font:inherit;color:var(--text);text-align:center;cursor:pointer;appearance:none;display:block}@media (hover:hover){.tl-day:hover{background:var(--surface)}}.tl-day .tl-doc-fio{font-size:12px}.tl-day .tl-doc-pos{font-size:11px}.tl-day-today{box-shadow:inset 0 -2px 0 var(--brand)}.tl-day-today .tl-doc-fio{color:var(--brand)}.tl-day-off .tl-doc-fio{opacity:.6}.tl-day-off .tl-doc-pos{color:var(--text-dim);font-style:italic}.tl-day-note{color:var(--warn);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.1;overflow:hidden}.tl-col-off{background:var(--bg-soft)}.tl-day.tl-day-linked{background:color-mix(in srgb, var(--brand) 10%, var(--surface));box-shadow:inset 0 0 0 2px var(--brand)}.tl-day.tl-day-linked.tl-day-today{box-shadow:inset 0 0 0 2px var(--brand), inset 0 -2px 0 var(--brand)}.tl-day.tl-day-linked .tl-doc-fio{color:var(--brand)}.tl-col-linked{background:color-mix(in srgb, var(--brand) 5%, transparent)}@media (width>=860px){.tl-scroll{max-height:calc(100dvh - 230px)}.tl-grid{grid-template-columns:54px repeat(var(--tl-cols), minmax(190px, 1fr))}.tl-grid.tl-week{grid-template-columns:54px repeat(var(--tl-cols), minmax(112px, 1fr))}.tl-day .tl-doc-fio{font-size:13px}.tl-doc{padding:9px 12px}.tl-doc-fio{font-size:14px}.tl-appt{padding:4px 8px}.tl-appt-fio{font-size:13px}}.kpis{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width>=720px){.kpis{grid-template-columns:repeat(4,1fr)}}.kpi{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:13px 14px}.kpi-label{color:var(--text-dim);font-size:12px;font-weight:550}.kpi-value{letter-spacing:-.02em;margin-top:4px;font-size:23px;font-weight:650}.kpi-note{color:var(--text-dim);margin-top:4px;font-size:12px}.loadbars{align-items:flex-end;gap:4px;height:92px;margin-top:12px;display:flex}.loadbars .lb{flex-direction:column;flex:1;justify-content:flex-end;height:100%;display:flex}.loadbars .lb-fill{background:var(--grad);min-height:3px;transition:height .3s var(--ease);border-radius:5px 5px 2px 2px}.loadbars .lb-fill.lb-empty{background:var(--surface-sunken)}.loadbars .lb-fill.lb-peak{box-shadow:var(--shadow-brand)}.loadbars-axis{gap:4px;margin-top:6px;display:flex}.loadbars-axis span{text-align:center;color:var(--text-dim);flex:1;font-size:10px}.flowbars{align-items:flex-end;gap:3px;height:92px;margin-top:12px;display:flex}.flowbars .fb{flex:1;justify-content:center;align-items:flex-end;gap:1px;min-width:0;height:100%;display:flex}.flowbars .fb-col{max-width:16px;min-height:3px;transition:height .3s var(--ease);border-radius:5px 5px 2px 2px;flex-direction:column;flex:1;justify-content:flex-end;display:flex;overflow:hidden}.flowbars .fb-made{background:var(--grad)}.flowbars .fb-done{background:var(--ok)}.flowbars .fb-none{background:var(--surface-sunken)}.flowbars .fb-late{background:var(--danger);width:100%}.flowbars .fb-today .fb-col{box-shadow:var(--shadow-brand)}.legend-dot{vertical-align:baseline;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.legend-made{background:var(--brand)}.legend-done{background:var(--ok)}.legend-late{background:var(--danger)}.docrow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.docrow-nums{color:var(--text-soft);white-space:nowrap;gap:12px;font-size:13px;display:flex}.docrow-nums b{color:var(--text);font-weight:650}.docrow-nums.nums-wrap{white-space:normal;flex-wrap:wrap;row-gap:2px}.sla-line{color:var(--text-soft)}.sla-line b{color:var(--text);font-weight:650}.sla-line-bad,.sla-line-bad b{color:var(--danger)}.sla-line-warn,.sla-line-warn b{color:var(--warn)}.sched-split{display:block}.sched-main{min-width:0}.mh{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-xs);margin-bottom:12px;padding:10px}.mh-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.mh-title{font-size:14px;font-weight:600}.mh-toggle{color:var(--text);font:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;padding:4px 6px;font-weight:600}.mh-wd,.mh-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.mh-wd{text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:3px;font-size:10px}.mh-cell{min-height:38px;font:inherit;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;transition:border-color .12s var(--ease), transform .12s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:2px;display:flex;position:relative}.mh-cell.mh-void{cursor:default;background:0 0;border-color:#0000}.mh-cell.mh-past{opacity:.65}.mh-num{font-size:12px;font-weight:600;line-height:1.1}.mh-n{color:var(--text-dim);font-size:10px;line-height:1}.mh-cell.mh-work.mh-l0{border-color:color-mix(in srgb, var(--ok) 35%, var(--border))}.mh-cell.mh-today .mh-num{color:var(--brand)}.mh-marks{justify-content:center;align-items:center;gap:3px;min-height:10px;display:flex}.mh-dot{background:var(--brand);border-radius:50%;flex:none;width:5px;height:5px}.mh-cell.mh-shift{border-color:color-mix(in srgb, var(--brand) 55%, var(--border))}.mh-cell.mh-off{opacity:.45}.mh-cell.mh-off.mh-past{opacity:.3}.mh-cell.mh-shut{border-style:dashed;border-color:var(--border-strong)}.mh-cell.mh-shut .mh-num{opacity:.55}.mh-cell.mh-short{border-color:var(--warn)}.mh-cell.mh-short:after{content:"";border-top:5px solid var(--warn);border-left:5px solid #0000;position:absolute;top:2px;right:2px}.mh-key-short{border-color:var(--warn);background:var(--warn-soft)}.mh-key-shut{border-style:dashed;border-color:var(--border-strong);background:var(--surface-2)}.mh-legend-shift{align-items:center;gap:4px;margin-left:6px;display:inline-flex}.mh-cell.mh-sel{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}@media (hover:hover){.mh-cell:not(.mh-void):hover{border-color:var(--border-strong)}}.mh-l0{background:var(--surface-2)}.mh-l1{background:color-mix(in srgb, var(--ok) 14%, var(--surface))}.mh-l2{background:color-mix(in srgb, var(--ok) 30%, var(--surface))}.mh-l3{background:color-mix(in srgb, var(--ok) 52%, var(--surface))}.mh-l4{background:color-mix(in srgb, var(--warn) 52%, var(--surface))}.mh-l3 .mh-n,.mh-l4 .mh-n{color:var(--text-soft)}.mh-legend{align-items:center;gap:4px;margin-top:8px;font-size:11px;display:flex}.mh-key{border:1px solid var(--border);border-radius:3px;width:16px;height:10px}@media (width>=860px){.sched-split{align-items:flex-start;gap:14px;display:flex}.sched-split>.mh{flex:0 0 258px;margin-bottom:0;position:sticky;top:8px}.sched-main{flex:auto}.mh-cell{min-height:44px}}.crash{text-align:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-width:560px;box-shadow:var(--shadow-sm);margin:32px auto;padding:28px 22px}.crash-emoji{margin-bottom:8px;font-size:40px;line-height:1}.crash h2{margin:0 0 8px}.crash>p{max-width:42ch;margin:0 auto 18px}.crash-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.crash-details{text-align:left;margin-top:18px}.crash-details summary{cursor:pointer;color:var(--text-dim);font-size:13px}.crash-details pre{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;max-height:220px;margin:10px 0 4px;padding:10px;font-size:12px;overflow:auto}.crash-details .small{margin:0;font-size:12px}.teeth{width:100%;max-width:420px;margin:0 auto}.teeth svg{touch-action:manipulation;width:100%;height:auto;display:block}.teeth-sm{max-width:260px}.tooth rect{fill:var(--surface-2);stroke:var(--border-strong);stroke-width:1px;transition:fill .14s var(--ease), stroke .14s var(--ease)}.tooth text{fill:var(--text-dim);-webkit-user-select:none;user-select:none;font-size:7.5px;font-weight:600}.tooth-edit{cursor:pointer}.tooth-edit:hover rect{stroke:var(--brand);fill:var(--brand-soft)}.tooth-edit:focus-visible{outline:none}.tooth-edit:focus-visible rect{stroke:var(--brand);stroke-width:2px}.tooth-on rect{fill:var(--brand);stroke:var(--brand)}.tooth-on text{fill:var(--brand-ink)}.teeth-mid{fill:var(--text-dim);font-size:11px;font-weight:600}.kanban{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;gap:10px;padding-bottom:8px;display:flex;overflow-x:auto}.kan-col{scroll-snap-align:start;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius);flex:0 0 236px;min-width:0;padding:10px}.kan-col-head{color:var(--text-soft);justify-content:space-between;align-items:flex-start;gap:8px;min-height:34px;margin-bottom:8px;font-size:13px;font-weight:650;display:flex}.kan-col-head>span:first-child{white-space:normal;line-height:1.25}.kan-col-n{color:var(--text-dim);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:1px 7px;font-size:12px}.kan-card{text-align:left;width:100%;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);cursor:pointer;transition:box-shadow .16s var(--ease), transform .16s var(--ease);padding:9px 10px;display:block}.kan-card+.kan-card{margin-top:8px}.kan-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.kan-card-num{letter-spacing:-.01em;font-size:13px;font-weight:650}.kan-card-urgent{border-left:3px solid var(--warn)}.kan-card-over{border-left:3px solid var(--danger)}.kan-empty{color:var(--text-dim);padding:6px 2px;font-size:12px}.route{padding-left:26px;position:relative}.route:before{content:"";background:var(--border);width:2px;position:absolute;top:6px;bottom:6px;left:9px}.route-step{padding:8px 0;position:relative}.route-step:before{content:"";background:var(--surface);border:2px solid var(--border-strong);border-radius:50%;width:12px;height:12px;position:absolute;top:13px;left:-22px}.route-done:before{background:var(--ok);border-color:var(--ok)}.route-active:before{background:var(--brand);border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-ring)}.route-name{font-size:14px;font-weight:600}.route-step+.route-step{border-top:1px solid var(--border)}.kan-col-note{background:0 0;border-style:dashed;align-items:center;display:flex}.thread{flex-direction:column;gap:8px;max-height:420px;display:flex;overflow-y:auto}.thread-msg{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);padding:8px 10px}.thread-mine{background:var(--brand-soft);border-color:#0000}.thread-sys{color:var(--text-dim);text-align:center;background:0 0;border-style:dashed;font-size:13px}.scan-box{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);aspect-ratio:4/3;max-height:60vh;position:relative;overflow:hidden}.scan-box video{object-fit:cover;width:100%;height:100%;display:block}.scan-box video.hidden{display:none}.scan-empty{color:var(--text-dim);justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.pick-row{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.pick-row input[type=checkbox]{flex:none;width:22px;height:22px;margin-top:2px}.pick-row-on{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 8%, var(--surface))}.label-sheet{flex-wrap:wrap;gap:8px;display:flex}.label{box-sizing:border-box;border:1px solid var(--border);background:#fff;border-radius:4px;gap:2mm;width:60mm;height:40mm;padding:1.8mm;font-size:8pt;line-height:1.2;display:flex;overflow:hidden}.label,.label *{color:#000!important}.label-qr{flex-direction:column;flex:none;align-items:center;gap:.6mm;width:20mm;display:flex}.label-qr svg{width:20mm;height:20mm;display:block}.label-num{letter-spacing:-.01em;font-size:11pt;font-weight:700}.label-body{flex-direction:column;gap:.6mm;min-width:0;display:flex;overflow:hidden}.label-work{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:9pt;font-weight:700;line-height:1.15;display:-webkit-box;overflow:hidden}.label-row{flex-wrap:wrap;gap:0 2.5mm;display:flex;overflow:hidden}.label-who{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:auto;font-size:7.5pt;line-height:1.15;display:-webkit-box;overflow:hidden}.label-marks{flex-wrap:wrap;justify-content:center;gap:.6mm;display:flex}.label-mark{letter-spacing:.02em;white-space:nowrap;border:1px solid #000;border-radius:1mm;padding:0 .8mm;font-size:6.5pt;font-weight:700}.count-sheet{color:#000;border-radius:var(--radius-sm);background:#fff;padding:6mm}@media (width<=640px){.count-sheet{padding:4mm;overflow-x:auto}}.count-sheet,.count-sheet *{color:#000!important}.count-head{margin-bottom:4mm}.count-title{font-size:15pt;font-weight:700;line-height:1.2}.count-sub{margin-top:1mm;font-size:10pt}.count-fields{flex-wrap:wrap;gap:2mm 8mm;margin-top:3mm;font-size:10pt;display:flex}.count-blank{border-bottom:1px solid #000;min-width:55mm}.count-table{border-collapse:collapse;width:100%;margin-bottom:4mm;font-size:10pt}.count-table th,.count-table td{text-align:left;vertical-align:middle;border:1px solid #000;padding:1.6mm 2mm}.count-table th{font-weight:700}.count-place{background:#eee;font-size:11pt}.count-num{text-align:center;width:8mm}.count-unit{width:18mm}.count-qty{width:26mm;height:9mm}.count-note{width:40mm}.count-code{font-size:8.5pt}.count-blankrow{height:9mm}.count-foot{margin-top:2mm;font-size:9pt}@media print{body *{visibility:hidden}.label-sheet,.label-sheet *,.count-sheet,.count-sheet *{visibility:visible}.label-sheet{gap:0;position:absolute;inset:0 auto auto 0}.label{page-break-inside:avoid;border:1px dashed #999;border-radius:0}.count-sheet{width:100%;padding:0;position:absolute;inset:0 auto auto 0}.count-table tr{page-break-inside:avoid}.count-table thead{display:table-header-group}.no-print{display:none!important}}.kb-card{color:inherit;text-decoration:none;transition:border-color .12s,transform .12s;display:block}.kb-card:hover{border-color:var(--brand);transform:translateY(-1px)}.kb-excerpt{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.kb-fav{width:30px;height:30px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:color .12s,background .12s,transform .12s;display:inline-flex}.kb-fav:hover{background:var(--surface-2);color:var(--text);transform:scale(1.08)}.kb-fav-on,.kb-fav-on:hover{color:#f0b429}.kb-fav-sm{width:24px;height:24px;margin:-2px 2px -2px -2px}.kb-fav-on svg{fill:currentColor}.kb-article{max-width:46rem}.kb-title{letter-spacing:-.01em;margin:0 0 10px;font-size:26px;line-height:1.2}.kb-body{font-size:16.5px;line-height:1.65}.kb-body .kb-p{margin:0 0 14px}.kb-body .kb-h{margin:22px 0 10px;scroll-margin-top:80px;font-size:18px;line-height:1.3}.kb-body .kb-list{margin:0 0 14px;padding-left:22px}.kb-body .kb-list li{margin-bottom:6px}.kb-toc{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);margin:0 0 18px;padding:10px 14px}.kb-toc ol{margin:6px 0 0;padding-left:20px}.kb-toc li{margin-bottom:4px}.kb-toc a{color:var(--text);text-decoration:none}.kb-toc a:hover{color:var(--brand);text-decoration:underline}.kb-ack-bar{background:var(--surface-sunken);border-radius:999px;height:8px;overflow:hidden}.kb-ack-bar span{background:var(--grad,var(--brand));border-radius:999px;height:100%;transition:width .2s;display:block}@media (width<=640px){.kb-title{font-size:22px}.kb-body{font-size:16px}}.label-sheet-lg .label-kb-lg{gap:4mm;width:100mm;height:70mm;padding:4mm}.label-kb{align-items:center}.label-kb .label-qr{width:24mm}.label-kb .label-qr svg{width:24mm;height:24mm}.label-kb-lg .label-qr{width:40mm}.label-kb-lg .label-qr svg{width:40mm;height:40mm}.label-kb .label-body{justify-content:center;gap:1mm}.label-kb-eyebrow{letter-spacing:.06em;text-transform:uppercase;font-size:6.5pt}.label-kb-lg .label-kb-eyebrow{font-size:9pt}.label-kb-lg .label-work{-webkit-line-clamp:3;font-size:15pt}.label-kb-excerpt{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:9pt;line-height:1.25;display:-webkit-box;overflow:hidden}.label-kb-cta{margin-top:.8mm;font-size:6.5pt;font-weight:700}.label-kb .label-work{-webkit-line-clamp:3;font-size:9.5pt}.label-kb .label-who{-webkit-line-clamp:1;margin-top:.8mm;font-size:6pt}.label-kb-lg .label-kb-cta{font-size:9.5pt}.ava-img{object-fit:cover;background:var(--surface-sunken)}.ch-ava.ava-tint,.chat-ava.ava-tint,.ava-sm.ava-tint,.ava-xl.ava-tint{background:hsl(var(--ava-h) 62% 90%);color:hsl(var(--ava-h) 55% 30%)}:root[data-theme=dark] .ch-ava.ava-tint,:root[data-theme=dark] .chat-ava.ava-tint,:root[data-theme=dark] .ava-sm.ava-tint,:root[data-theme=dark] .ava-xl.ava-tint{background:hsl(var(--ava-h) 38% 26%);color:hsl(var(--ava-h) 70% 84%)}.chat-reactions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.chat-reaction{background:var(--surface-sunken);border:1px solid var(--border);color:var(--text-soft);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:13px;line-height:20px;display:inline-flex}.chat-reaction.mine{background:var(--brand-soft);border-color:var(--brand);color:var(--text)}.chat-reaction small{font-size:11px;font-weight:650}.chat-react-bar{border-bottom:1px solid var(--border);gap:2px;margin-bottom:4px;padding:2px 2px 6px;display:flex}.chat-react-bar button{cursor:pointer;background:0 0;border:0;border-radius:999px;padding:4px 5px;font-size:19px;line-height:1}.chat-react-bar button:hover,.chat-react-bar button.on{background:var(--brand-soft)}.chat-poll{flex-direction:column;gap:6px;min-width:min(260px,62vw);display:flex}.chat-poll-head{align-items:flex-start;gap:6px;line-height:1.3;display:flex}.chat-poll-head svg{color:var(--brand);flex:none;margin-top:2px}.chat-poll-head strong{word-break:break-word;font-size:14.5px}.chat-poll-hint{font-size:11.5px}.chat-poll-opts{flex-direction:column;gap:4px;display:flex}.chat-poll-row{flex-direction:column;gap:2px;display:flex}.chat-poll-names{word-break:break-word;padding:0 9px;font-size:11.5px;line-height:1.3}.chat-poll-pending{word-break:break-word;font-size:11.5px;line-height:1.3}.chat-poll-person{font:inherit;color:var(--brand);cursor:pointer;background:0 0;border:0;border-bottom:1px dashed;padding:0;line-height:1.1}.chat-poll-person.on{color:var(--text);border-bottom-style:solid}.chat-poll-person.more{color:var(--text-dim)}.chat-poll-person[disabled]{cursor:default;opacity:.6}.chat-poll-person.nudged{color:var(--text-dim)}.chat-poll-person.nudged.on{color:var(--text)}.chat-poll-person-bell{vertical-align:-1px;opacity:.75;margin-left:3px;display:inline-flex}.chat-poll-person-acts{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.chat-poll-person-acts .btn-ghost{align-items:center;gap:5px;min-height:0;padding:3px 8px;font-size:12px;display:inline-flex}.chat-poll-note{font-size:11.5px;line-height:1.3}.chat-poll-remind{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.chat-poll-remind-btn{align-items:center;gap:5px;min-height:0;padding:3px 8px;font-size:12px;display:inline-flex}.chat-poll-remind small{font-size:11.5px}.chat-poll-opt{cursor:pointer;text-align:left;background:var(--surface-sunken);border:1px solid var(--border);color:var(--text);border-radius:9px;align-items:center;gap:6px;padding:6px 9px;font-size:13.5px;display:flex;position:relative;overflow:hidden}.chat-poll-bar{background:var(--brand-soft);pointer-events:none;transition:width .25s;position:absolute;inset:0 auto 0 0}.chat-poll-opt.lead .chat-poll-bar{background:color-mix(in srgb, var(--brand) 22%, transparent)}.chat-poll-opt.mine{border-color:var(--brand)}.chat-poll-mark{border:1.5px solid var(--border);color:#fff;border-radius:50%;flex:0 0 15px;justify-content:center;align-items:center;height:15px;display:inline-flex;position:relative}.chat-poll-opt.mine .chat-poll-mark{background:var(--brand);border-color:var(--brand)}.chat-poll-text{word-break:break-word;flex:1;min-width:0;position:relative}.chat-poll-count{color:var(--text-soft);font-weight:650;position:relative}.chat-poll-foot{font-size:11.5px}.chat-poll.closed .chat-poll-opt{cursor:default;opacity:.85}.presence{color:var(--text-dim);align-items:center;gap:5px;font-size:12px;display:inline-flex}.presence:before{content:"";background:var(--text-dim);border-radius:50%;width:7px;height:7px}.presence.in:before{background:#22c55e}.presence.shift:before{opacity:.65;background:#22c55e}.presence.soon:before{background:#f59e0b}.presence.timeoff:before{background:#a78bfa}.chat-head .presence{min-width:0;max-width:100%}.chat-head .presence span,.chat-head .presence{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-head{align-items:center;gap:14px;display:flex}.profile-ava{flex-direction:column;align-items:center;gap:6px;display:flex}.ava-xl{background:var(--grad-soft);width:64px;height:64px;color:var(--brand);border-radius:50%;flex:0 0 64px;justify-content:center;align-items:center;font-size:22px;font-weight:700;display:flex}.profile-ava .btn{cursor:pointer}.ava-sm{background:var(--surface-sunken);width:22px;height:22px;color:var(--text-dim);border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;font-size:9px;font-weight:650;display:inline-flex}.voice{align-items:center;gap:10px;width:min(260px,100%);margin:2px 0 4px;display:flex}.voice-play{cursor:pointer;background:var(--brand);color:#fff;border:0;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;padding:0;display:grid}.voice-play:hover{filter:brightness(1.06)}.voice-body{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.voice-wave{cursor:pointer;touch-action:none;outline:none;align-items:center;gap:2px;height:26px;display:flex}.voice-wave:focus-visible{box-shadow:0 0 0 2px var(--brand-ring);border-radius:4px}.voice-wave i{background:color-mix(in srgb, var(--text-dim) 45%, transparent);border-radius:2px;flex:1 1 0;min-width:2px}.voice-wave i.on{background:var(--brand)}.voice-meta{color:var(--text-dim);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:11.5px;display:flex}.voice-rate{cursor:pointer;border:1px solid var(--border);background:var(--surface-sunken);height:18px;color:var(--text-dim);font:inherit;border-radius:9px;margin-left:auto;padding:0 6px;font-size:10.5px;line-height:1}.voice-rate:hover{border-color:var(--brand);color:var(--text)}.voice-dl{color:var(--text-dim);display:inline-flex}.voice-dl:hover{color:var(--brand)}.chat-recording{align-items:center}.chat-rec-body{font-variant-numeric:tabular-nums;flex:auto;align-items:center;gap:8px;min-width:0;padding:0 2px;display:flex}.chat-rec-body strong{font-size:15px}.chat-rec-dot{background:var(--danger);border-radius:50%;flex:none;width:10px;height:10px;animation:1.1s ease-in-out infinite rec-pulse}@keyframes rec-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.chat-rec-dot{animation:none}}.chat-rec-bar{background:var(--surface-sunken);border-radius:2px;flex:auto;min-width:24px;height:3px;overflow:hidden}.chat-rec-bar i{background:var(--danger);height:100%;display:block}.chat-voice-drop{color:var(--danger)}.chat-voice-err{color:var(--danger);margin-bottom:6px;font-size:12.5px}.meet-person{background:var(--bg-soft);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 3px;display:inline-flex}.meet-person .ch-ava{flex-basis:24px;width:24px;height:24px;font-size:11px}.meet-person-name{font-size:13px}.meet-page{padding-bottom:96px}.guest-wrap{max-width:980px;margin:0 auto;padding:16px 14px 0}.guest-bar{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px}.meet-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:14px;display:grid}.meet-tile{border-radius:var(--radius);text-align:center;background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:6px;padding:14px 10px;transition:border-color .12s,box-shadow .12s;display:flex}.meet-tile.speaking{border-color:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.meet-tile-ava{flex-basis:56px;width:56px;height:56px;font-size:20px}.meet-tile-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:600;overflow:hidden}.meet-tile-sub{font-size:12px}.meet-screens{gap:10px;margin-top:14px;display:grid}.meet-screens[data-n="2"]{grid-template-columns:repeat(2,1fr)}@media (width<=720px){.meet-screens[data-n="2"]{grid-template-columns:1fr}}.meet-screen{border-radius:var(--radius);background:#000;position:relative;overflow:hidden}.meet-screen video{object-fit:contain;cursor:zoom-in;width:100%;max-height:58vh;display:block}.meet-screen-cap{color:#fff;background:#0000008c;border-radius:999px;padding:2px 8px;font-size:12px;position:absolute;bottom:8px;left:8px}@media (width<=560px){.meet-page>.row-between{flex-wrap:wrap}.meet-page>.row-between>.wrap{flex:1 0 100%;justify-content:flex-start}}.meet-rec-bar{border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 30%, transparent);align-items:center;gap:8px;margin-top:10px;padding:8px 12px;font-size:14px;display:flex}.meet-rec-dot{background:var(--danger);border-radius:50%;flex:none;width:10px;height:10px;animation:1.4s ease-in-out infinite meet-rec-pulse}@keyframes meet-rec-pulse{0%,to{opacity:1}50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.meet-rec-dot{animation:none}}.chat-video{border-radius:var(--radius);background:#000;width:100%;max-height:50vh;margin-top:6px;display:block}.meet-rec-player{border-radius:var(--radius);background:#000;width:100%;margin-top:8px;display:block}.meet-bar{z-index:3;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-md);flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;padding:10px;display:flex;position:sticky;bottom:0}.task-talk{border-left:3px solid var(--border-strong);background:var(--bg-soft);border-radius:8px;margin-top:10px;padding:10px 12px}.task-talk-row{border-bottom:1px solid var(--border);padding:6px 0}.task-talk-row:last-of-type{border-bottom:0}.task-talk-row.mine strong{color:var(--brand)}.task-talk .chat-photos.one{max-width:200px}.task-talk .chat-photos.one .chat-photo img{max-height:200px}.task-hist-row{cursor:pointer;border:1px solid #0000;border-radius:8px;margin:0 -8px;padding:6px 8px}.task-hist-row:hover{background:var(--surface-sunken)}.task-hist-row.on{border-color:var(--brand);background:var(--surface-sunken)}.task-hist-detail{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.urgent-next{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:6px 0 0;padding:0;font-size:13px;display:block}.urgent-next:hover{color:var(--brand)}.task-hit{outline:2px solid var(--brand);outline-offset:2px;box-shadow:0 0 0 6px var(--brand-ring)}.kb-history{grid-template-columns:minmax(260px,340px) 1fr;align-items:start;gap:14px;display:grid}.kb-rev{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit}.kb-rev:hover{border-color:var(--brand)}.kb-rev-on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.kb-diff{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:14.5px;line-height:1.55;overflow:hidden}.kb-diff-line{white-space:pre-wrap;word-break:break-word;gap:8px;padding:2px 10px;display:flex}.kb-diff-sign{opacity:.7;-webkit-user-select:none;user-select:none;flex:none;width:12px}.kb-diff-add{background:var(--ok-soft);color:var(--text)}.kb-diff-del{background:var(--danger-soft);opacity:.85;text-decoration:line-through}.kb-diff-words{opacity:1;background:0 0;text-decoration:none}.kb-diff-word{border-radius:4px;padding:0 1px}.kb-diff-word-add{background:var(--ok-soft);font-weight:600}.kb-diff-word-del{background:var(--danger-soft);text-decoration:line-through}@media (width<=860px){.kb-history{grid-template-columns:1fr}}.find-list{flex-direction:column;gap:6px;display:flex}.find-row{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;text-decoration:none;display:flex}.find-row:hover{background:var(--surface-2)}.find-title{font-size:15px;font-weight:600}.find-text{color:var(--text-dim);font-size:13px}.find-row mark{background:var(--brand-soft);color:var(--text);border-radius:4px;padding:0 2px}.chip-recent{gap:4px;max-width:100%;padding-right:4px}.chip-recent>span[role=button]{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;min-width:0;display:inline-flex;overflow:hidden}.chip-x{width:18px;height:18px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.chip-x:hover{background:var(--surface);color:var(--text)}.pc{background:var(--bg);flex-direction:column;min-height:100%;display:flex}.pc-head{z-index:5;padding:calc(12px + env(safe-area-inset-top)) 16px 0;background:color-mix(in srgb, var(--bg) 84%, transparent);-webkit-backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.pc-head-in{max-width:640px;margin:0 auto}.pc-head-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.pc-logo{border-radius:9px;width:30px;height:30px;font-size:16px}.pc-head-sub{color:var(--text-dim);margin:2px 0 8px;font-size:13px}.pc-tabs{gap:18px;display:flex}.pc-tab{color:var(--text-dim);border-bottom:2px solid #0000;padding:8px 0 10px;font-size:15px;font-weight:600;text-decoration:none}.pc-tab-on{color:var(--text);border-bottom-color:var(--brand)}.pc-tab-dot{text-align:center;color:#fff;background:var(--brand);vertical-align:2px;border-radius:9px;min-width:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;display:inline-block}.pc-body{width:100%;max-width:640px;padding:18px 16px calc(28px + env(safe-area-inset-bottom));flex:1;margin:0 auto}.pc-body .card .section-title:first-child{margin-top:0}.pc-foot{text-align:center;color:var(--text-dim);padding:0 16px calc(18px + env(safe-area-inset-bottom));font-size:12px}.pc-next{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:22px}.pc-next-day{color:var(--brand);letter-spacing:.02em;font-size:15px;font-weight:650}.pc-next-time{letter-spacing:-.03em;font-size:40px;font-weight:700;line-height:1.1}.pc-next-date{color:var(--text-dim);margin-bottom:12px;font-size:15px}.pc-next-doc{font-size:17px;font-weight:600}.pc-next-clinic{margin-top:8px;font-size:14px}.pc-next-empty .pc-next-day{color:var(--text);font-size:20px}.pc-list{margin:0;padding-left:20px;font-size:14px}.pc-list li{margin-bottom:5px}.pc-alert{text-align:left;cursor:pointer;border:0;border-top:1px solid var(--border);width:100%;color:inherit;font:inherit;background:0 0;border-left:3px solid #0000;margin:0;padding:10px 0 10px 12px;display:block}.pc-alert:first-of-type{border-top:0}.pc-alert-new{border-left-color:var(--brand)}.pc-alert-title{font-size:15px;font-weight:600}.pc-alert-new .pc-alert-title{color:var(--brand)}.pc-alert-body{white-space:pre-wrap;margin:2px 0 3px;font-size:14px}.pc-visit{border-top:1px solid var(--border);gap:12px;padding:10px 0;display:flex}.pc-visit:first-of-type{border-top:0;padding-top:2px}.pc-visit-when{flex-direction:column;flex:0 0 96px;font-size:14px;display:flex}.pc-visit-when .dim{font-size:13px}.pc-visit-body{min-width:0}.pc-visit-title{font-size:15px;font-weight:600}.pc-visit-off .pc-visit-title,.pc-visit-off .pc-visit-when strong{opacity:.65;text-decoration:line-through}.pc-req{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,var(--surface));margin-top:12px;padding:12px 14px}.pc-req-live{border-color:var(--brand)}.pc-code{letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums;font-size:26px}.mh-cell.fm-danger{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 16%, var(--surface-2))}.mh-cell.fm-plain{border-color:color-mix(in srgb, var(--brand) 50%, var(--border));background:color-mix(in srgb, var(--brand) 12%, var(--surface-2))}.mh-cell.fm-ok{border-color:color-mix(in srgb, var(--ok) 50%, var(--border));background:color-mix(in srgb, var(--ok) 12%, var(--surface-2))}.mh-cell.fm-empty .mh-num{opacity:.65}.fm-n{font-size:11px;font-weight:600;line-height:1}.mh-key.fm-danger{border-color:var(--danger)}.att-hit{border-radius:10px;margin:2px -8px;padding:6px 8px}:is(.content:has(>*>.lab-journal),.content:has(.lab-journal)){max-width:none}.lab-journal{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.lj-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);flex-direction:column;gap:12px;padding:14px;display:flex;position:sticky;top:72px}.lj-create{white-space:nowrap;min-height:34px;margin-right:6px;padding:6px 16px;font-size:14px;font-weight:650}.lj-create-m{display:none}.lj-menu{flex-direction:column;gap:2px;display:flex}.lj-menu a{border-radius:var(--radius-sm);color:var(--text);padding:9px 10px;font-size:14px;text-decoration:none}.lj-menu a:hover{background:var(--brand-soft);color:var(--brand)}.lj-menu-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin:10px 10px 2px;font-size:11px}.lj-count{padding:0 10px;font-size:13px;line-height:1.6}.lj-main{flex-direction:column;min-width:0;display:flex}.lj-sticky{background:var(--bg);z-index:3;flex-direction:column;gap:8px;padding-bottom:10px;display:flex;position:relative}.lj-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lj-tags-label{color:var(--text-dim);margin-right:2px;font-size:12px}.lj-spacer{flex:1}.lj-tag{cursor:pointer;background:var(--surface);border:1px solid var(--border-strong);min-height:32px;color:var(--text);font:inherit;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:550;display:inline-flex}.lj-tag:hover{border-color:var(--brand);color:var(--brand)}.lj-tag.on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.lj-tag-int{border-color:var(--adm);color:var(--adm)}.lj-tag-int.on{background:var(--adm);border-color:var(--adm);color:#fff}.lj-tag-sort{background:var(--surface-2);font-weight:500}.lj-tag-quiet{min-height:28px;padding:4px 10px;font-weight:500}.lj-tag-doc{min-height:28px;padding:4px 10px;font-size:12.5px;font-weight:450}.lj-doctors{border-top:1px dashed var(--border-strong);max-height:76px;padding-top:6px;overflow:auto}.lj-tags input.lj-search{flex:0 260px;width:260px;max-width:100%;min-height:32px;padding:5px 10px;font-size:13px}.lj-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);overflow:auto}.lj-table{border-collapse:collapse;width:100%;font-size:14px}.lj-table th{z-index:2;background:var(--surface-2);text-align:left;color:var(--text-soft);border-bottom:1px solid var(--border-strong);white-space:nowrap;padding:10px;font-size:12px;font-weight:650;position:sticky;top:0}.lj-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:7px 10px}.lj-table tr:last-child td{border-bottom:0}.lj-click{cursor:pointer}.lj-table tbody tr:hover td{background:color-mix(in srgb, var(--brand-soft) 55%, transparent)}.lj-nowrap{white-space:nowrap}.lj-no{font-variant-numeric:tabular-nums;font-weight:700}.lj-patient{font-weight:600}.lj-int td{background:color-mix(in srgb, var(--adm-soft) 70%, transparent)}.lj-int td:first-child{box-shadow:inset 4px 0 0 var(--adm)}.lj-cell-btn{font:inherit;color:inherit;cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:1px dashed #0000;border-radius:6px;margin:-4px -6px;padding:4px 6px}.lj-cell-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.lj-cell-btn:disabled{cursor:default}.lj-empty{color:var(--text-dim)}.lj-overdue{color:var(--danger);font-weight:700}.lj-editor{align-items:center;gap:4px;display:inline-flex}.lj-editor input{width:auto;min-height:32px;padding:4px 6px;font-size:13px}.lj-editor .btn{min-height:32px;padding:4px 9px}.lj-closed{align-items:center;gap:8px;min-height:26px;display:flex}.lj-check{display:inline-flex}.lj-check input{cursor:pointer;width:20px;height:20px;accent-color:var(--ok)}.lj-month-wrap{position:relative}.lj-month{color:#fff;cursor:pointer;font:inherit;letter-spacing:.01em;border:0;border-radius:999px;padding:3px 11px;font-size:12px;font-weight:700}.lj-month:disabled{cursor:default}.lj-month-pop{z-index:20;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-width:180px;box-shadow:var(--shadow-lg);flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.lj-month-opt{text-align:left;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.lj-month-opt:hover,.lj-month-opt.on{background:var(--surface-2)}.lj-dot{border-radius:50%;flex:none;width:10px;height:10px}.lj-more{padding:10px;font-size:13px}.lj-create-sheet{width:min(620px,94vw)!important}.lj-field{flex-direction:column;gap:5px;font-size:13px;display:flex}.lj-field>span{color:var(--text-soft);font-weight:550}.lj-field input[type=date],.lj-field input[type=datetime-local]{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:44px;font:inherit;color:var(--text);padding:8px 12px}.lj-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lj-row>input,.lj-row>select{flex:1;min-width:160px}.lj-inline{white-space:nowrap;align-items:center;gap:5px;font-size:13px;display:inline-flex}.lj-hint-wrap{position:relative}.lj-hints{z-index:5;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);flex-direction:column;margin-top:4px;padding:4px;display:flex;position:absolute;top:100%;left:0;right:0}.lj-hint{text-align:left;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:13px}.lj-hint:hover{background:var(--surface-2)}.lj-log-row{border-bottom:1px solid var(--border);grid-template-columns:120px 1fr;gap:12px;padding:10px 0;font-size:14px;display:grid}.lj-log-row:last-of-type{border-bottom:0}.lj-log-when{font-variant-numeric:tabular-nums;font-size:13px}.lj-log-changes{margin-top:4px;font-size:13px;line-height:1.55}.lj-clinic-int{box-shadow:inset 4px 0 0 var(--adm), var(--shadow-xs)}.lj-docs{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.lj-doc{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:3px 4px 3px 10px;font-size:13px;display:inline-flex}.lj-doc-btn{cursor:pointer;color:var(--text-dim);background:0 0;border:0;padding:0 5px;font-size:13px}.lj-doc-btn:hover{color:var(--brand)}@media (width>=901px){.lj-main{height:calc(100vh - 93px)}.lj-table-wrap{flex:1;min-height:0}}@media (width<=900px){.lab-journal{grid-template-columns:minmax(0,1fr);gap:10px}.lj-side{gap:8px;padding:10px;position:static}.lj-tags .lj-create{display:none}.lj-create-m{width:100%;min-height:48px;font-size:16px;font-weight:650;display:flex}.lj-menu{scrollbar-width:none;flex-direction:row;gap:4px;overflow-x:auto}.lj-menu::-webkit-scrollbar{display:none}.lj-menu a{white-space:nowrap;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:13px}.lj-menu-head,.lj-count{display:none}.lj-tags{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.lj-tags::-webkit-scrollbar{display:none}.lj-spacer{display:none}.lj-tags input.lj-search{flex:0 0 200px}.lj-doctors{max-height:none}.lj-log-row{grid-template-columns:1fr;gap:2px}}@media (width<=720px){.lj-table-wrap{box-shadow:none;background:0 0;border:0;overflow:visible}.lj-table thead{display:none}.lj-table,.lj-table tbody{display:block}.lj-table tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2px 12px;margin-bottom:10px;padding:10px 12px;display:grid}.lj-table tr.lj-int{background:color-mix(in srgb, var(--adm-soft) 70%, var(--surface));box-shadow:inset 4px 0 0 var(--adm), var(--shadow-xs)}.lj-table td{white-space:normal;border:0;min-width:0;padding:2px 0;display:block;box-shadow:none!important;background:0 0!important}.lab-journal,.lj-main,.lj-table-wrap,.lj-table{min-width:0;max-width:100%}.lj-table td:before{content:attr(data-label);color:var(--text-dim);font-size:11px;display:block}.lj-c-no{order:-1;font-size:18px}.lj-c-reg:before,.lj-c-no:before,.lj-c-patient:before,.lj-c-clinic:before{display:none!important}.lj-c-reg{text-align:right;color:var(--text-dim);font-size:12px}.lj-c-clinic{grid-column:1/-1;font-weight:600}.lj-c-doctor:before{display:none!important}.lj-c-doctor{color:var(--text-soft)}.lj-c-patient{font-size:15px}.lj-c-sent,.lj-c-due,.lj-c-closed{margin-top:6px}.lj-c-closed{grid-column:1/-1}.lj-cell-btn{border:1px dashed var(--border-strong);min-height:36px;margin:0;padding:6px 8px}.lj-editor{flex-wrap:wrap}.lj-month-pop{left:0;right:auto}}.content:has(.exo){max-width:none}.exo{border:1px solid var(--border);border-radius:var(--radius);color:#2b2d31;background:#eceef0;grid-template-columns:minmax(300px,1.15fr) minmax(320px,1fr) minmax(220px,.62fr);gap:0;min-height:calc(100vh - 120px);display:grid;overflow:hidden}.exo-col{min-width:0;padding:18px 20px}.exo-left{background:#eef0f2;border-right:1px solid #d5d8dc;overflow:auto}.exo-center{background:#f3f4f5;flex-direction:column;align-items:center;display:flex}.exo-right{background:#e6e8ea;border-left:1px solid #d5d8dc;flex-direction:column;gap:6px;display:flex}.exo-head{align-items:center;gap:14px;width:100%;margin-bottom:12px;display:flex}.exo-title{letter-spacing:-.01em;color:#3a3c40;margin:0;font-size:32px;font-weight:300}.exo-back{cursor:pointer;color:#3a3c40;background:0 0;border:0;padding:0 4px;font-size:30px;line-height:1}.exo-card{background:#f8f8f9;border-radius:3px;margin-bottom:14px;padding:14px 16px;box-shadow:0 1px 4px #00000029}.exo-card-title{margin-bottom:8px;font-size:14px;font-weight:700}.exo-card textarea{width:100%;min-height:110px;font:inherit;background:#fff;border:1px solid #9ea1a6;border-radius:2px;padding:8px}.exo-form{flex-direction:column;gap:12px;display:flex}.exo-row{align-items:flex-end;gap:10px;display:flex}.exo-row>select,.exo-row>input{flex:1;min-width:0}.exo-field{flex-direction:column;gap:3px;font-size:13px;display:flex;position:relative}.exo-field>span{color:#55585d;padding-left:2px;font-size:11px}.exo-field input,.exo-field select{width:100%;min-height:40px;font:inherit;color:#2b2d31;background:#e2e3e6;border:0;border-bottom:1.5px solid #55585d;border-radius:2px 2px 0 0;padding:6px 10px}.exo-field input:focus,.exo-field select:focus{border-bottom-color:var(--brand);background:#e9ecf1;outline:none}.exo-group{margin-bottom:12px}.exo-group-name{color:#3a3c40;margin:0 0 6px 2px;font-size:17px}.exo-tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;display:grid}.exo-tile{cursor:pointer;text-align:left;color:#fff;min-height:52px;font:inherit;border:0;border-radius:2px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:8px 12px;display:flex;box-shadow:0 1.5px 4px #00000038}.exo-tile:hover{filter:brightness(1.08)}.exo-tile:active{transform:translateY(1px)}.exo-tile-name{font-size:14px;font-weight:700;line-height:1.2}.exo-tile-price{opacity:.9;font-size:11.5px}.exo-tile-clear{background:#e52d2d;align-items:center;width:100%;margin-top:6px}.exo-help{color:#6b6e73;margin:-6px 0 6px;font-size:13px}.exo-arch{-webkit-user-select:none;user-select:none;width:100%;max-width:400px;height:auto}.exo-tooth{cursor:pointer}.exo-tooth-ro{cursor:default}.exo-arch-card{max-width:300px}.exo-tooth:hover rect{filter:brightness(.94)}.exo-bottom{width:100%;max-width:400px;margin-top:8px}.exo-action{cursor:pointer;font:inherit;color:#2b2d31;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:12px;padding:10px 6px;font-size:15px;text-decoration:none;display:flex}.exo-action:hover:not(:disabled){background:#0000000d}.exo-action:disabled{opacity:.5;cursor:default}.exo-action-main{font-size:16px;font-weight:700}.exo-ico{color:#fff;border-radius:5px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:inline-flex}.exo-summary{border-top:1px solid #cfd2d6;flex-direction:column;gap:10px;margin-top:14px;padding-top:12px;font-size:13px;display:flex}.exo-sum-group{flex-direction:column;gap:3px;display:flex}.exo-sum-row{align-items:center;gap:6px;display:flex}.exo-total{font-size:15px;font-weight:700}@media (width<=1100px){.exo{grid-template-columns:1fr 1fr}.exo-right{border-top:1px solid #d5d8dc;border-left:0;grid-column:1/-1}}@media (width<=720px){.exo{border-radius:0;grid-template-columns:1fr;margin:0 -8px;padding-bottom:70px}.exo-left{border-right:0}.exo-col{padding:14px}.exo-title{font-size:24px}.exo-arch{max-width:340px}.exo-row{flex-wrap:wrap}.exo-row>.exo-field{min-width:0;flex:140px!important}.exo-left.exo-picking{left:0;right:0;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));z-index:40;border-radius:14px 14px 0 0;max-height:58vh;padding-top:10px;position:fixed;overflow:auto;box-shadow:0 -10px 28px #00000047}.exo-left.exo-picking .exo-title{font-size:22px}.exo-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.exo-tile{min-height:56px}.exo-right .exo-action-main{display:none}.exo-mobile-save{z-index:30;left:12px;right:12px;bottom:calc(var(--nav-h) + 10px + env(safe-area-inset-bottom));min-height:52px;box-shadow:var(--shadow-lg);font-size:16px;display:flex;position:fixed}}@media (width>=721px){.exo-mobile-save{display:none}}
