:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-canvas:#edeffe;--app-surface:#fff;--app-fg:#182453;--app-muted:#4d5b89;--app-border:#cbd2f4;--app-control-border:#7886b1;--app-soft:#e8edff;--app-accent:#2743cf;--app-accent-hover:#2036aa;--app-on-accent:#fff;--app-focus:#2743cf;--app-danger:#a72543;--app-danger-soft:#fff0f3;--app-sidebar:#2743cf;--app-sidebar-active:#425bd6;--app-sidebar-hover:#3852d3;--app-sidebar-fg:#fff;--chart-patients:#2743cf;--chart-days:#9b3d75;--app-nav-width:100px;--app-header-height:63px;--app-footer-height:35px;--app-gutter:clamp(18px, 2.5vw, 40px);--app-radius:15px;-webkit-text-size-adjust:100%;font-family:Geist,Noto Sans KR,Malgun Gothic,맑은 고딕,system-ui,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-canvas:#12182c;--app-surface:#1a233c;--app-fg:#edf1ff;--app-muted:#b4c1e0;--app-border:#465475;--app-control-border:#7c89af;--app-soft:#29365d;--app-accent:#aabaff;--app-accent-hover:#c3cdff;--app-on-accent:#142041;--app-focus:#adbeff;--app-danger:#ffacc5;--app-danger-soft:#41283f;--app-sidebar:#27378f;--app-sidebar-active:#4054ae;--app-sidebar-hover:#3448a5;--chart-patients:#aabaff;--chart-days:#f3a9d4}*,:before,:after{box-sizing:border-box}html,body{overflow:hidden}body{color:var(--app-fg);background:var(--app-canvas);margin:0}button,input,textarea,select{font:inherit}button:not(:disabled){cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:var(--app-accent)}:focus-visible{outline:2px solid var(--app-focus);outline-offset:3px}h1[tabindex="-1"]:focus{outline:0}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{--ink:var(--app-fg);--surface:var(--app-surface);--line:var(--app-control-border);--muted:var(--app-muted);--accent:var(--app-accent);--accent-hover:var(--app-accent-hover);--on-accent:var(--app-on-accent);--focus:var(--app-focus);--soft:var(--app-soft);--sidebar:var(--app-sidebar);--sidebar-ink:var(--app-sidebar-fg);--error:var(--app-danger);grid-template:"header header" var(--app-header-height) "sidebar main" minmax(0, 1fr) "footer footer" var(--app-footer-height) / var(--app-nav-width) minmax(0, 1fr);min-width:0;height:100dvh;min-height:0;display:grid;position:relative;overflow:clip}.app-topbar,.app-footer{background:var(--app-surface);align-items:center;padding-inline:clamp(12px,2.25vw,32px);display:flex}.app-topbar{border-bottom:1px solid var(--app-border);grid-area:header;justify-content:space-between;gap:8px}.app-brand{color:var(--app-fg);letter-spacing:-.035em;white-space:nowrap;align-items:center;gap:9px;font-size:clamp(13px,1.6vw,19px);font-weight:790;display:inline-flex}.app-brand-mark{color:var(--app-accent);align-items:flex-end;gap:2px;display:flex}.app-brand-mark i{background:currentColor;border-radius:1px;width:3px;display:block}.app-brand-mark i:first-child{height:8px}.app-brand-mark i:nth-child(2){height:14px}.app-brand-mark i:nth-child(3){height:11px}.app-top-actions{align-items:center;gap:6px;display:flex}.app-top-actions :is(a,button),.app-sidebar nav :is(a,button),.button{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.app-top-actions :is(a,button){min-height:40px;color:var(--app-fg);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:5px 11px;font-size:13px;text-decoration:none;display:inline-flex}.app-top-actions :is(.app-account-link,.app-theme-toggle){border-color:var(--app-border)}.app-top-actions :is(a,button):is(:hover,[aria-current]){background:var(--app-soft)}.app-top-actions :is(a,button):active{border-color:var(--app-control-border)}.app-top-actions .app-theme-toggle{width:40px;color:var(--app-accent);padding:0}.app-theme-sun,:root[data-theme=dark] .app-theme-moon{display:none}:root[data-theme=dark] .app-theme-sun{display:block}.app-sidebar{background:var(--app-sidebar);min-height:0;color:var(--app-sidebar-fg);grid-area:sidebar;padding:18px 7px}.app-sidebar nav{gap:5px;display:grid}.app-sidebar nav :is(a,button){min-height:55px;color:inherit;text-align:center;word-break:keep-all;background:0 0;border:1px solid #0000;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:5px 2px;font-size:12px;font-weight:680;text-decoration:none;display:flex}.app-sidebar nav :is(a,button):hover{background:var(--app-sidebar-hover)}.app-sidebar nav [aria-current]{background:var(--app-sidebar-active);box-shadow:inset 0 -2px var(--app-sidebar-fg)}.app-sidebar nav :is(a,button):active{border-color:var(--app-sidebar-fg)}.app-sidebar nav :focus-visible{outline-color:var(--app-sidebar-fg);outline-offset:-2px}.app-content{scrollbar-gutter:stable;overscroll-behavior:contain;grid-area:main;min-width:0;min-height:0;position:relative;overflow:auto}.app-content:focus-visible{outline-offset:-3px}.app-content-inner{width:min(100%,1640px);min-width:0;padding:var(--app-gutter);margin-inline:auto}.app-footer{border-top:1px solid var(--app-border);white-space:nowrap;grid-area:footer;justify-content:flex-end;font-size:11px;font-weight:750}.app-skip{z-index:10;background:var(--app-surface);color:var(--app-accent);border-radius:6px;padding:10px 14px;position:absolute;top:8px;left:8px;transform:translateY(-200%)}.app-skip:focus{transform:none}.app-page{width:min(100%,940px)}.app-page-heading{border-inline-start:5px solid var(--app-accent);margin-bottom:18px;padding:4px 0 5px 14px}.app-page-heading h1{letter-spacing:-.07em;word-break:keep-all;overflow-wrap:anywhere;margin:0;font-size:clamp(28px,3.6vw,48px);font-weight:800;line-height:1.15}.app-page-heading p{color:var(--app-muted);word-break:keep-all;margin:8px 0 0;font-size:14px;line-height:1.55}.app-panel{border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);min-width:0;max-width:560px;padding:clamp(13px,2.3vw,26px)}.app-panel h2{letter-spacing:-.045em;margin:0 0 14px;font-size:21px}.form-stack{border:0;gap:15px;min-width:0;margin:0;padding:0;display:grid}.form-field{min-width:0;font-size:14px}.form-field label{margin:0 0 6px;font-weight:720;display:block}.form-optional{color:var(--app-muted);font-size:12px;font-weight:600}.form-required,.form-error{color:var(--app-danger)}.form-field :is(input,textarea,select):not([type=checkbox],[type=radio]){width:100%;min-width:0;min-height:42px;color:var(--app-fg);background:var(--app-surface);border:1px solid var(--app-control-border);border-radius:7px;padding:8px 10px}.form-field textarea{resize:vertical;display:block}.form-field input[readonly]{background:var(--app-soft)}.form-field :is(input,textarea)[aria-invalid=true]{border-color:var(--app-danger);background:var(--app-danger-soft)}.form-field-meta{color:var(--app-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:2px 7px;margin-top:5px;font-size:12px;line-height:1.45;display:flex}.form-error{margin:6px 0 0;font-size:13px;line-height:1.45}.form-submit-error{margin-top:12px}.form-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.button{text-align:center;word-break:keep-all;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;max-width:100%;min-height:42px;padding:8px 13px;font-size:13px;font-weight:750;line-height:1.4;text-decoration:none;display:inline-flex}.button-primary{background:var(--app-accent);color:var(--app-on-accent)}.button-primary:is(:hover,:active):not(:disabled){background:var(--app-accent-hover)}.button-secondary{border-color:var(--app-control-border);background:var(--app-surface);color:var(--app-fg)}.button-secondary:is(:hover,:active):not(:disabled){background:var(--app-soft)}.app-auth-alert{border:1px solid var(--app-danger);color:var(--app-danger);background:var(--app-danger-soft);border-radius:7px;margin:0 0 14px;padding:9px 12px;font-size:13px}@media (max-width:760px){:root{--app-nav-width:70px;--app-gutter:15px}.app-sidebar{padding-inline:5px}}@media (max-width:470px){:root{--app-nav-width:64px;--app-header-height:52px;--app-footer-height:30px;--app-gutter:10px}.app-topbar{padding-inline:8px}.app-brand{gap:5px}.app-top-actions{gap:2px}.app-top-actions :is(a,button){min-height:38px;padding-inline:6px;font-size:12px}.app-top-actions .app-theme-toggle{width:36px}.app-sidebar{padding:12px 4px}.app-sidebar nav :is(a,button){min-height:48px;font-size:11px}.app-content{scrollbar-gutter:auto}.app-page-heading{padding-inline-start:9px}.app-page-heading h1{font-size:clamp(24px,7vw,30px)}.app-page-heading p{font-size:13px}}@media (max-width:330px){.app-brand-mark{display:none}}@media (max-height:285px){.app-sidebar{overflow:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}
