*{box-sizing:border-box}body{margin:0;font:15px system-ui,sans-serif;color:#172c38;background:#f3f6f8}header{background:#173d4c;color:white;padding:24px 32px}h1{margin:0}small{font-size:14px;font-weight:400}main{padding:20px 32px}section{margin:20px 0}.toolbar,nav{display:flex;gap:12px;flex-wrap:wrap;align-items:end}label{display:inline-flex;flex-direction:column;gap:4px}button,.upload{background:#fff;border:1px solid #9caeb8;border-radius:6px;padding:9px;cursor:pointer;color:#173d4c}button:hover{background:#dfeef3}button:disabled{opacity:.5;cursor:wait}input,select{font:inherit;padding:7px;border:1px solid #aab9c1;border-radius:4px}input[type=file]{max-width:230px}.tablewrap{overflow:auto;background:white;border-radius:8px}table{border-collapse:collapse;width:100%}th,td{border:1px solid #dce3e7;padding:5px;text-align:center;white-space:nowrap}th{background:#e5eef2}th:first-child{position:sticky;left:0;z-index:1;min-width:155px}td select{min-width:48px;padding:5px}.weekend{background:#edf0f5}.employee{display:flex;gap:10px;align-items:center;margin:10px 0;flex-wrap:wrap}.notice{padding:16px;border-left:4px solid #dcaa4b;background:#fff8e7}dialog{max-width:800px;width:90%;max-height:85vh;overflow:auto;border:0;border-radius:10px;padding:24px}dialog::backdrop{background:#0008}#status{font-weight:600}.active{background:#173d4c;color:white}.shift-F{background:#d8efdf}.shift-S{background:#fff0c9}.shift-N{background:#e1dcf7}

[hidden]{display:none!important}.header-row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}#userMenu{display:flex;align-items:center;gap:10px}.auth-screen{margin:0;padding:40px 20px;min-height:75vh;display:grid;place-items:start center}.auth-card{width:min(100%,540px);background:white;border:1px solid #dae3e8;border-radius:14px;padding:30px;box-shadow:0 8px 30px #173d4c12}.auth-card h2{margin-top:6px;font-size:26px}.auth-card form{display:flex;flex-direction:column;gap:16px}.auth-card input{width:100%}.auth-card button[type=submit]{background:#173d4c;color:#fff;font-weight:600;padding:12px}.auth-card .eyebrow{font-size:12px;letter-spacing:1px;color:#53707d}.auth-note{font-size:13px;color:#5b717b;margin-top:24px}.checkbox{flex-direction:row;align-items:start}.checkbox input{width:auto;margin:4px}#authError{color:#a52424}#factorSecret{font-family:monospace;font-size:16px}#recoveryCodes{white-space:pre-wrap;background:#eff4f7;padding:16px;border-radius:8px;font-size:14px}.welcome{background:#e4f2ed;border:1px solid #b8d7c9;border-radius:10px;padding:20px}.welcome h2{margin-top:0}@media(max-width:600px){main{padding:16px}header{padding:20px}.auth-card{padding:22px}}

:root{--bg:#f4f6fb;--surface:#fff;--text:#243348;--muted:#607087;--border:#d9e0eb;--accent:#275f67;--soft:#e9f2f3;--warning:#fff6dd;--head:#eaf0f6;color-scheme:light}html[data-theme=dark]{--bg:#111820;--surface:#1c2733;--text:#e7edf5;--muted:#a9b8c9;--border:#3a4959;--accent:#71c8c9;--soft:#22383d;--warning:#3b3120;--head:#263443;color-scheme:dark}body{background:var(--bg);color:var(--text)}header{background:#17343e;padding:22px 32px}main{max-width:1800px;margin:auto;padding-bottom:90px}button,.upload,input,select,textarea{background:var(--surface);color:var(--text);border-color:var(--border)}button:hover{background:var(--soft)}button:disabled{opacity:.7;cursor:default}button.active,#mainTabs .active{background:var(--accent);color:var(--bg);border-color:var(--accent)}input,select,textarea{font:inherit;padding:9px;border:1px solid var(--border);border-radius:7px}textarea{min-height:110px;resize:vertical;width:100%}#mainTabs{align-items:center;gap:6px;padding:12px 0 18px;border-bottom:1px solid var(--border);margin-bottom:24px}#mainTabs button{border-radius:8px;padding:10px 14px}h2{font-size:25px;letter-spacing:-.4px}h3{margin-bottom:9px}article,.auth-card,.tablewrap{background:var(--surface);border:1px solid var(--border);border-radius:12px}article{padding:18px 22px;margin:12px 0}article button{margin:8px 8px 0 0}article small{display:block;color:var(--muted)}dialog{background:var(--surface);color:var(--text);max-width:900px;box-shadow:0 20px 80px #0005}dialog h2{margin-top:0}.auth-card{color:var(--text)}.auth-note,.auth-card .eyebrow{color:var(--muted)}.welcome{background:var(--soft);border-color:var(--border)}.notice{background:var(--warning);border-color:#caa347}th{background:var(--head)}th,td{border-color:var(--border);padding:9px}.weekend{background:var(--soft)}td small{display:block;font-size:11px;max-width:145px;white-space:normal}td button{min-width:105px;border:0;background:transparent;padding:12px 8px}.shift-F{background:#e3f3e9}.shift-S{background:#fff0d4}.shift-N{background:#ede8fa}html[data-theme=dark] .shift-F{background:#244136}html[data-theme=dark] .shift-S{background:#423b27}html[data-theme=dark] .shift-N{background:#35304a}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid input,.form-grid select{width:100%}.form-grid fieldset,.full-width,.form-grid textarea,.form-grid .error{grid-column:1/-1}.form-grid fieldset{display:flex;gap:14px;flex-wrap:wrap;border:1px solid var(--border);border-radius:8px;padding:14px}.form-grid fieldset label{flex-direction:row;align-items:center}.form-grid fieldset input{width:auto}.error{color:#ce4949}.floating{position:fixed;bottom:22px;right:26px;background:var(--accent);color:var(--bg);box-shadow:0 6px 24px #0003;z-index:5;padding:14px 19px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px}.metric{text-align:left;padding:22px;display:flex;flex-direction:column;gap:8px;border-radius:12px}.metric strong{font-size:32px;color:var(--accent)}#settingsArea{display:flex;gap:16px;flex-wrap:wrap;margin:22px 0}#conceptArea pre{font:inherit;white-space:pre-wrap;line-height:1.6}details{background:var(--surface);border:1px solid var(--border);padding:16px;border-radius:8px;margin:10px 0}summary{cursor:pointer;font-weight:600}#authError{color:#cf5050}#userMenu{flex-wrap:wrap}@media(max-width:700px){.form-grid{grid-template-columns:1fr}header{padding:18px}main{padding:15px 15px 85px}#mainTabs button{font-size:13px;padding:9px}.floating{right:14px;bottom:14px}.cards{grid-template-columns:repeat(2,1fr)}}@media print{header,#mainTabs,.floating,.toolbar button,.toolbar label,#status,#emptyWelcome{display:none!important}body{background:white;color:black}main{padding:0}.tablewrap{overflow:visible}#plan button{color:black;opacity:1}th,td{font-size:9px;padding:2px}td button{min-width:0;padding:3px;font-size:9px}#planState{display:block}#planDescription{font-size:12px}@page{size:A4 landscape;margin:12mm}}
:root{--sidebar-width:242px}header{position:sticky;top:0;z-index:8;background:var(--surface);color:var(--text);border-bottom:1px solid var(--border);padding:16px 26px}.header-row h1{font-size:21px}.header-row h1 small{display:block;margin-top:7px;color:var(--muted);font-size:12px}.developer-credit{font-size:11px;opacity:.8}.header-row p{margin:7px 0 0;color:var(--muted);font-size:12px}#appMain{max-width:none;margin:0;padding:24px 28px 96px calc(var(--sidebar-width) + 28px);transition:padding-left .2s}#appMain.menu-collapsed{--sidebar-width:76px}#sidebar{position:fixed;top:116px;left:0;bottom:0;width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);padding:18px 14px;overflow:auto;z-index:7;transition:width .2s}#sidebar.collapsed{width:76px;padding:18px 8px}.brand-mark{position:relative;width:190px;aspect-ratio:547/312;margin:0 auto 14px;overflow:hidden}.brand-mark img{width:100%;height:auto;display:block}.logo-letters{display:none}html[data-theme=dark] .brand-mark img{clip-path:inset(0 62% 0 0)}html[data-theme=dark] .logo-letters{display:block;position:absolute;inset:0;background:#eef4f8;mask:url('/logo-ghb.png') center/100% 100% no-repeat;clip-path:inset(0 0 0 38%)}.collapsed .brand-mark{width:50px;height:77px;margin:0 auto 16px}.collapsed .brand-mark img{width:135px;max-width:none}.collapsed .logo-letters{display:none!important}#menuToggle{width:100%;display:flex;gap:10px;align-items:center;border:0;background:var(--soft);margin-bottom:12px}#mainTabs{display:block;border:0;padding:0;margin:0}.nav-group{margin:15px 0}.nav-group>small{display:block;color:var(--muted);font-size:10px;letter-spacing:1px;text-transform:uppercase;padding:5px 10px}.nav-group button{display:flex;align-items:center;gap:11px;width:100%;border:0;background:transparent;text-align:left;padding:11px!important;margin:3px 0}.nav-group button>span:first-child{width:20px;text-align:center;font-size:18px}.nav-group button>span:last-child{font-size:13px}.nav-group button.active{background:var(--soft)!important;color:var(--accent)!important;box-shadow:inset 3px 0 var(--accent)}.collapsed .nav-group button>span:last-child,.collapsed .nav-group>small,.collapsed #menuToggle span,.collapsed .sidebar-version{display:none}.collapsed .nav-group button{justify-content:center}.sidebar-version{display:block;color:var(--muted);font-size:10px;line-height:1.6;border-top:1px solid var(--border);padding-top:16px}#status{position:sticky;top:116px;z-index:6;margin:0 0 20px;padding:11px 15px;background:var(--soft);border:1px solid var(--border);border-radius:9px;font-size:12px;font-weight:500}.toolbar{align-items:center;gap:9px}.toolbar h2{margin-right:auto}.tablewrap{max-height:calc(100vh - 300px);border-radius:12px}#plan thead{position:sticky;top:0;z-index:3}#plan thead th:first-child{z-index:4;min-width:140px}#plan tbody th:first-child,#plan tfoot th:first-child{position:sticky;left:0;z-index:2;min-width:140px}#plan td{min-width:60px}#plan td button{min-width:106px}#plan .week-divider th{position:static;background:var(--accent);color:var(--bg);text-align:left;padding:12px 16px;font-weight:600}#plan .week-total td,#plan .week-total th,#plan tfoot td,#plan tfoot th{background:var(--head);font-weight:600}.profile-tabs{grid-column:1/-1;display:flex;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--border)}.profile-section{grid-column:1/-1;width:100%;margin:0}#editor form>button{position:sticky;bottom:0;z-index:2;padding:12px 16px}#editor input[type=checkbox]{width:auto}.form-grid .profile-tabs{flex-wrap:wrap}#editor form>button[type=submit]{background:var(--accent);color:var(--bg)}#editor form>label{display:flex;margin:12px 0}#editor form>label input,#editor form>label select{width:100%}#editor form>label input[type=checkbox]{width:auto}#editor .profile-section label{margin:0}#editor .profile-section fieldset{grid-column:1/-1}@media(max-width:850px){:root{--sidebar-width:76px}#sidebar{width:76px;padding:18px 8px}#sidebar .brand-mark{width:50px;height:77px}#sidebar .brand-mark img{width:135px;max-width:none}#sidebar .logo-letters{display:none!important}#sidebar .nav-group button>span:last-child,#sidebar .nav-group>small,#sidebar .sidebar-version,#sidebar #menuToggle span{display:none}#sidebar:not(.collapsed){width:242px;box-shadow:10px 0 40px #0004}#sidebar:not(.collapsed) .nav-group button>span:last-child,#sidebar:not(.collapsed) .nav-group>small,#sidebar:not(.collapsed) #menuToggle span{display:block}#appMain{padding-left:94px}.header-row h1{font-size:18px}}@media print{#sidebar,#status{display:none!important}#appMain{padding:0}.tablewrap{max-height:none;overflow:visible}#plan thead,#plan th:first-child{position:static!important}#plan tbody{break-inside:avoid}#plan .week-divider th{background:#e8eeee;color:black}#plan td button{min-width:0}#plan td{min-width:0}}

#sidebar{top:var(--header-height,116px);display:flex;flex-direction:column;overflow:hidden}#sidebar .brand-mark,#sidebar #menuToggle,#sidebar .sidebar-version{flex-shrink:0}#mainTabs{flex:1;min-height:0;overflow:auto}#status{top:var(--header-height,116px)}#plan td,#plan th{padding:6px;font-size:13px}#plan td button{padding:6px 8px}#plan .week-divider th{padding:9px 12px}.tablewrap{max-height:calc(100vh - 330px)}
html[data-theme=dark] .brand-mark img{position:relative;z-index:1;clip-path:polygon(18.7% 0,37.2% 66%,37.2% 100%,0 100%,0 57%)}html[data-theme=dark] .logo-letters{clip-path:none}
.header-row h1{font-size:32px;font-weight:800;margin:0}.header-row .tagline{font-size:12px;font-weight:300;margin:6px 0 0}.employee-divider{border-left:3px solid var(--muted)!important}#assistantResult table{width:100%;margin:16px 0}#users05 article,[data-panel=patches] article{padding:18px;border:1px solid var(--border);border-radius:12px;margin:14px 0}fieldset label:has(input[type=checkbox]){display:flex!important;gap:10px}#print05{position:fixed;inset:0;z-index:100;background:#e7e9ed;color:#101820;overflow:auto;padding:20px}#print05>button{margin-right:10px}.print-sheet{width:1440px;padding:20px;background:white;color:#101820;margin:20px auto;overflow:hidden}.print-content table{width:100%;border-collapse:collapse;font-size:12px}.print-content td,.print-content th{padding:4px;border:1px solid #bbc5cc;position:static!important}.print-content thead{position:static!important}.print-content .week-divider th{background:#426771;color:white}.print-content th{background:#e6edf1}.print-content span{white-space:nowrap}.print-content small{display:block}.print-content h2{margin:0}.print-content p{margin:6px 0 12px}@page{size:A3 landscape;margin:8mm}@media print{body:has(#print05)>*:not(#print05){display:none!important}#print05{position:static;padding:0;background:white;overflow:visible}#print05>p,#print05>button{display:none!important}.print-sheet{margin:0;padding:0;width:1400px;border:0;overflow:visible}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-content tbody{break-inside:auto} .print-content{color:#101820}}

#print05{margin:0}.print-sheet{margin:20px auto 0}.print-content td,.print-content th{white-space:nowrap}.print-content small{max-width:150px;white-space:normal}.print-content tr,.print-content tbody{break-inside:auto}
