.due-notifications{margin-bottom:20px;min-width:0}.due-toolbar{justify-content:flex-end}.due-bell,.due-toolbar{display:flex;position:relative}.due-bell{align-items:center;gap:5px;min-width:44px;min-height:44px;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer;color:var(--text)}.due-badge{background:#b42318;color:white;font-size:12px;border-radius:20px;min-width:20px;padding:1px 5px}.due-panel{position:absolute;right:0;top:50px;z-index:40;width:min(380px,100%);padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #14283e24;max-height:min(640px,75dvh);overflow:auto;overflow-wrap:anywhere}.due-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.due-explanation,.due-items small{color:var(--muted);font-size:12px}.due-items h3{font-size:14px;margin:16px 0 8px}.due-items h3 span{color:var(--muted)}.due-items ul{list-style:none;padding:0;margin:0}.due-items li a{display:grid;grid-gap:5px;gap:5px;padding:12px 8px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.due-items li a:hover{background:#f2f5f9}.due-items li span{font-size:13px}.due-view-all{display:block;padding-top:16px}.due-session-notice{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 16px;margin-top:12px;border:1px solid #c9dcef;border-radius:10px;background:#f0f6fc;font-size:14px}.due-session-notice span{flex:1 1 220px}.operation-table tr:target{outline:2px solid #4079bf;outline-offset:-2px}.table-scroll{max-width:100%;overflow-x:auto}.table-scroll:focus-visible{outline:2px solid #2456a6;outline-offset:2px}.calendar-mobile-weekday,.table-scroll-hint{display:none}@media (max-width:640px){*,:after,:before{box-sizing:border-box}main{margin:16px auto!important;padding:16px!important;min-width:0;max-width:100%;overflow-wrap:anywhere}main :where(section,article,div,form,nav,label,p,ol,ul,dl){min-width:0}main .customer-content{padding:16px!important}main form{max-width:100%!important}main label{display:block;max-width:100%}main input,main select,main textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px;margin-top:6px;font:inherit;font-size:16px}main input[type=checkbox],main input[type=radio]{display:inline-block;width:24px;min-height:24px}main input[type=file]{padding:4px 0}main input::-webkit-file-upload-button{min-height:44px;padding:8px;font:inherit}main input::file-selector-button{min-height:44px;padding:8px;font:inherit}main button{max-width:100%;padding:10px 12px;font:inherit;white-space:normal}main a,main button{min-height:44px;min-width:44px;overflow-wrap:anywhere;vertical-align:middle}main a{display:inline-block;padding:6px 0;align-content:center}main nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px}main nav h2{margin:8px 0}.filter-bar{flex-wrap:wrap;align-items:end}.filter-bar label{flex:1 1 180px}main dd{margin-left:0}main ol,main ul{padding-left:24px}.table-scroll-hint{display:block;margin-bottom:8px;font-size:14px}.table-scroll table{min-width:720px;border-collapse:collapse}.table-scroll td,.table-scroll th{min-width:84px;padding:10px 8px;vertical-align:top;overflow-wrap:anywhere}.table-scroll td:first-child{min-width:160px;max-width:280px}.table-scroll td button{margin:3px 0}.calendar-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}.calendar-spacer,.calendar-weekday{display:none}.calendar-mobile-weekday{display:inline}.calendar-day{min-height:0!important;padding:12px!important}.calendar-day button{padding:12px;line-height:1.5}#calendar-task-detail{scroll-margin-top:16px}}:root{--ink:#202b37;--muted:#657181;--accent:#245477;--accent-hover:#193e5b;--line:#dce2e8;--surface:#fff;--canvas:#f4f6f8;--radius:6px;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--space-5:32px}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}h1,h2,h3,p{margin-top:0}h1{font-size:26px;line-height:1.35;font-weight:650;margin-bottom:24px}h2{font-size:20px;line-height:1.45;margin-bottom:16px}h3{font-size:16px;margin-bottom:12px}p{margin-bottom:16px}a{color:var(--accent);text-underline-offset:3px}.meta,small{color:var(--muted);font-size:13px}button,input,select,textarea{font:inherit}.button,button{min-height:40px;padding:8px 16px;border:1px solid #bdc7d2;border-radius:var(--radius);background:#fff;color:var(--ink);cursor:pointer;line-height:1.4}button:hover{background:#f0f3f6}button:disabled{opacity:.55;cursor:not-allowed}.button-primary{background:var(--accent);border-color:var(--accent);color:#fff}.button-primary:hover{background:var(--accent-hover)}.button-danger{color:#9c302d;border-color:#e3b8b5;background:#fff7f6}.button-text{color:var(--accent);border-color:transparent;background:transparent}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.field{font-weight:500}.control,.field{display:block;min-width:0}.control{width:100%;min-height:42px;margin-top:8px;padding:9px 12px;border:1px solid #b9c4cf;border-radius:var(--radius);color:var(--ink);background:#fff;font-weight:400}textarea.control{min-height:104px;resize:vertical}.control:disabled{background:#edf0f3;color:var(--muted)}.control[aria-invalid=true]{border-color:#ac3933}.form-stack{display:grid;grid-gap:16px;gap:16px;max-width:560px;width:100%}.form-actions{display:flex;flex-wrap:wrap;gap:12px}.section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.page-header h1{margin-bottom:0}.page-header p{margin:8px 0 0}.page-actions{display:flex;gap:12px;flex-wrap:wrap}.metric-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px;min-width:0}.metric-card strong{font-size:13px;color:var(--muted);font-weight:500}.metric-value{font-size:28px;line-height:1.2;font-weight:650;margin:12px 0 16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric-card a,.status-badge{font-size:13px}.status-badge{display:inline-block;white-space:nowrap;font-weight:500;line-height:1.5;padding:2px 8px;border-radius:4px;border:1px solid transparent}.status-muted,.status-neutral{color:#586474;background:#edf0f3}.status-info{color:#245477;background:#eaf1f7}.status-success{color:#276342;background:#eaf4ed}.status-warning{color:#815a16;background:#fff3d8}.status-danger{color:#9c302d;background:#fbeceb}.feedback{padding:12px 16px;margin:16px 0;border:1px solid #c7dece;border-left:3px solid #43835a;border-radius:4px;color:#28593a;background:#f3f8f4;overflow-wrap:anywhere}.feedback-error{color:#8b2f2b;border-color:#e9c7c4 #e9c7c4 #e9c7c4 #ac3933;background:#fff6f5}.empty-state{padding:24px 16px;color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius)}.app-shell{min-height:100vh;display:grid;grid-template-columns:208px minmax(0,1fr)}.app-sidebar{background:#fff;border-right:1px solid var(--line);padding:24px 16px;display:flex;flex-direction:column;height:100vh;position:-webkit-sticky;position:sticky;top:0;overflow-y:auto}.brand{display:block;color:var(--ink);text-decoration:none;font-size:21px;font-weight:650;line-height:1.4}.brand span{font-size:13px;letter-spacing:.08em;margin-left:4px}.brand small{display:block;font-size:12px;margin-top:4px;font-weight:400}.desktop-brand{padding:0 12px 24px}.nav-group{margin-bottom:16px}.nav-group p{margin:0 12px 8px;font-size:12px;color:var(--muted)}.nav-group a{display:block;padding:9px 12px;border-radius:4px;color:#485564;text-decoration:none;margin-bottom:4px}.nav-group a:hover{background:#f2f5f8}.nav-group a[aria-current=page]{color:var(--accent);background:#eaf1f7;font-weight:600;box-shadow:inset 3px 0 var(--accent)}.shell-identity{margin-top:auto;padding:16px 12px 0;border-top:1px solid var(--line);display:grid;grid-gap:4px;gap:4px;overflow-wrap:anywhere}.shell-identity span{font-size:13px;color:var(--muted)}.shell-identity button{justify-self:start;margin-top:8px;padding-left:0}.app-content{min-width:0;padding:32px}.app-content>main{width:100%;max-width:1200px!important;margin:0 auto!important;padding:0!important;font-family:inherit!important}.app-content .customer-content{border-radius:var(--radius)!important;border-color:var(--line)!important}.mobile-shell-header{display:none}.skip-link{position:fixed;left:16px;top:-100px;z-index:10;padding:12px;background:#fff}.skip-link:focus{top:12px}.login-page{max-width:448px;padding:64px 24px;margin:auto}.login-page .brand{font-size:28px}.login-page .brand span{font-size:17px}.login-page .section{margin-top:24px}.login-page h1{font-size:22px;margin-bottom:24px}.login-page .form-stack{max-width:none}.public-page{max-width:640px;margin:40px auto;padding:24px}.public-page .form-stack{max-width:none}.public-page>.brand{margin-bottom:24px}@media (max-width:760px){.app-shell{display:block}.mobile-shell-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff}.app-sidebar,.mobile-shell-header{border-bottom:1px solid var(--line)}.app-sidebar{display:none;position:static;height:auto;padding:16px;border-right:0}.app-sidebar.is-open{display:flex}.desktop-brand{display:none}.nav-group a{min-height:44px}.app-content{padding:24px 16px}.shell-identity{margin-top:8px}.page-header{flex-wrap:wrap}h1{font-size:24px}.button,.control,button{min-height:44px}.control{font-size:16px}.section{padding:16px}.login-page{padding-top:32px!important}.app-content>main{padding:0!important;margin:0!important}}