.dark,:root{color-scheme:light;--background:#f5f7fb;--foreground:#243249;--primary:#315fbd;--primary-foreground:#fff;--card:#fff;--card-foreground:#243249;--popover:#fff;--popover-foreground:#243249;--secondary:#eef2f8;--secondary-foreground:#344967;--muted:#eef2f8;--muted-foreground:#64748b;--border:#e0e6ef;--input:#d5deeb;--ring:#5078c6;--accent:#edf3ff;--accent-foreground:#2855ad;--destructive:#b83e45;--radius:.75rem}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--foreground);font-family:Inter,Segoe UI,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.65}a,button,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a,button,input,select,textarea{transition:background-color .15s,border-color .15s,box-shadow .15s}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #93b1ed;outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-.8px;line-height:1.45}h1,h2{font-weight:650}h2{font-size:19px;line-height:1.5}h3{font-size:15px;font-weight:650}.muted{font-size:13px;font-weight:400;color:var(--muted-foreground)}.shell{min-height:100vh}.masthead{background:#fff;border-bottom:1px solid var(--border);min-height:88px;padding:20px max(28px,calc((100vw - 1180px)/2));justify-content:space-between;gap:24px}.auth-brand,.brand,.masthead{display:flex;align-items:center}.auth-brand,.brand{gap:12px;flex-shrink:0}.brand-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--primary);border-radius:13px;color:#fff}.brand-icon svg{width:23px;height:23px}.brand strong{font-size:19px;font-weight:700;letter-spacing:.5px}.brand p{font-size:12px;color:var(--muted-foreground);margin-top:2px}.account-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.account-bar [data-slot=button]{min-height:36px;font-size:13px;padding:8px 12px}.local-label{background:#eef3fb;color:#47618a;border-radius:7px;font-size:12px;padding:7px 10px}.shell main{max-width:1180px;margin:auto;padding:36px 0 12px}.page-heading{margin-bottom:26px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;color:#6880a2;margin-bottom:9px}.page-description{font-size:14px;color:var(--muted-foreground);margin-top:10px}.main-tabs{background:#e9eef6!important;border:1px solid #e3e9f2;border-radius:12px;gap:4px;height:auto!important;padding:5px!important;margin-bottom:24px;width:fit-content}.main-tabs button{min-height:40px;padding:10px 24px;font-size:14px;border-radius:8px;color:#60718a;gap:8px}.main-tabs button[data-state=active]{background:#fff!important;color:var(--primary)!important;box-shadow:0 2px 6px #2432490b!important}.main-tabs button:after{display:none}.submit-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:24px;align-items:start}.panel{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:30px;min-width:0;box-shadow:0 3px 12px #24324903}.section-heading{padding-bottom:22px;border-bottom:1px solid #edf0f5;margin-bottom:26px}.section-heading p{font-size:13px;color:var(--muted-foreground);margin-top:6px}.request-form{display:grid;gap:22px}.choice-field,.request-form label{display:grid;gap:8px;min-width:0;font-size:13px;font-weight:600}.account-search input,.detail-body [data-slot=select-trigger],.detail-body textarea,.request-form [data-slot=select-trigger],.request-form input,.request-form select,.request-form textarea,.toolbar [data-slot=select-trigger],.toolbar input{border:1px solid var(--input);border-radius:9px;background:#fff;box-shadow:none;min-height:44px;width:100%;font-size:14px;font-weight:400;padding:10px 12px;color:var(--foreground)}.request-form textarea{min-height:132px;resize:vertical}.request-form input::placeholder,.request-form textarea::placeholder{color:#92a0b2}.request-form input:focus,.request-form select:focus,.request-form textarea:focus{border-color:var(--ring);outline:2px solid #dce7fc;outline-offset:1px}.request-form input[readonly]{background:#f2f5fa;color:#6b7d96}.request-form select{appearance:auto;padding-right:12px}.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}fieldset{min-width:0;border:0;padding:0;margin:0}.time-label,legend{font-size:13px;font-weight:600;margin-bottom:10px}.deadline-time{display:flex;align-items:center;gap:10px}.deadline-time select{flex:1;min-width:0}.time-label{display:block;margin-bottom:8px}.request-form fieldset>.muted{margin-top:10px}.priority-options{display:flex;gap:14px;flex-wrap:wrap}.priority-options label{display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:9px;padding:10px 18px;min-width:116px;font-weight:400}.priority-options label:has([data-state=checked]){border-color:#a9bfe8;background:#f1f5fe;color:var(--primary)}.retention-note{background:#f6f8fc;color:#697a91;border-radius:9px;padding:12px 14px;font-size:12px;border:1px solid #e9edf4}.form-bottom{border-top:1px solid #edf0f5;padding-top:22px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}[data-slot=button]{border-radius:8px;min-height:38px;box-shadow:none;font-weight:550}[data-slot=button][data-variant=outline]{background:#fff;border-color:var(--input)}[data-slot=button][data-variant=outline]:hover{background:var(--accent);border-color:#bacbec}.submit-button{min-height:44px;min-width:150px;font-size:14px;justify-self:start}.guide{background:#edf3fc;border:1px solid #dbe5f4;border-radius:16px;padding:26px 24px;color:#355783}.guide-number{font-size:11px;letter-spacing:2px;font-weight:700;color:#7a92b4;margin-bottom:14px}.guide h2{font-size:19px;margin-bottom:24px}.guide ol{list-style:none;padding:0;margin:0;counter-reset:step}.guide li{counter-increment:step;position:relative;padding:0 0 24px 36px}.guide li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:2px;font-size:11px;font-weight:700;color:#6484b4}.guide li:not(:last-child):after{content:"";position:absolute;left:8px;top:25px;bottom:5px;width:1px;background:#d2dff1}.guide b{font-weight:600;font-size:14px}.guide li p{margin-top:4px}.guide li p,.guide-foot{font-size:12px;color:#7186a3}.guide-foot{padding-top:16px;border-top:1px solid #d6e1f1}footer{display:flex;justify-content:space-between;gap:12px;margin-top:30px;padding:20px 0;color:#8491a4;font-size:12px;border-top:1px solid var(--border)}.account-message,.auth-error,.error-banner,.receipt{padding:15px 16px;border:1px solid #c5dfd6;background:#eff8f4;color:#326953;border-radius:10px;font-size:13px;overflow-wrap:anywhere}.receipt{display:flex;gap:12px;margin-bottom:22px}.receipt svg{flex-shrink:0;width:20px}.receipt p{margin-top:4px}.receipt button{padding:0}.error-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.auth-error,.error-banner{background:#fff3f2;color:#a14242;border-color:#f0d3d1}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stats>div{background:white;border:1px solid var(--border);border-radius:14px;padding:20px 24px}.stats span{font-size:13px;color:var(--muted-foreground)}.stats strong{display:block;font-size:30px;line-height:1.4;font-weight:650;margin-top:8px;font-variant-numeric:tabular-nums}.overdue{color:#ba514c}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.toolbar>input{max-width:460px}.toolbar [data-slot=select-trigger]{width:150px;flex-shrink:0}.toolbar>.muted{margin-top:5px}.task-row{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;text-align:left;background:#fff;padding:22px 12px;border-top:1px solid #e9edf4;border-radius:8px}.task-row:hover{background:#f7f9fd}.task-main{min-width:0}.task-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.task-title h3{font-size:15px;overflow-wrap:anywhere}.task-main p{color:#718099;font-size:13px;margin-top:6px}.task-id{display:inline-block;color:#8a97aa;font-size:11px;overflow-wrap:anywhere;margin-top:6px;font-variant-numeric:tabular-nums}.badge,.urgent{display:inline-block;font-size:11px;font-weight:550;line-height:1.7;border-radius:6px;padding:3px 8px;white-space:nowrap}.pending{background:#f0f3f7;color:#64748b}.processing{background:#eaf1ff;color:#3c64a9}.done{background:#e9f6f0;color:#36795c}.failed,.urgent{background:#fcefee;color:#ad514c}.due{display:flex;align-items:start;gap:7px;white-space:nowrap;font-size:13px;font-variant-numeric:tabular-nums}.due svg{margin-top:3px}.due small{display:block;text-align:right;color:#8795a9;font-size:11px;margin-top:4px}.channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:22px}.channel>svg{color:var(--primary);width:21px;margin-bottom:16px}.channel h2{margin-bottom:10px}.channel p{color:var(--muted-foreground);font-size:13px;margin-top:12px}.notification-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;border-top:1px solid #e9edf4}.notification-row>div:first-child{min-width:0;overflow-wrap:anywhere}.notification-row b{font-size:14px;font-weight:600}.notification-row p{font-size:13px;color:#718099;margin:4px 0}.notification-row small{font-size:11px;color:#8795a9}.notification-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}[data-slot=sheet-overlay]{background:#172b4940;backdrop-filter:blur(2px)}.detail-sheet{width:min(600px,100vw)!important;max-width:600px!important;background:#fff;padding:0;gap:0;overflow-y:auto;border-left:1px solid var(--border)}.detail-sheet [data-slot=sheet-header]{padding:28px 52px 22px 28px;border-bottom:1px solid var(--border);background:#f9fbfe;gap:7px}.detail-sheet [data-slot=sheet-title]{font-size:20px;font-weight:650;overflow-wrap:anywhere}.detail-sheet [data-slot=sheet-description]{font-size:13px;line-height:1.7;color:var(--muted-foreground)}.detail-sheet>button{top:22px;right:20px;padding:8px;border-radius:8px}.detail-body{padding:26px 28px 32px;min-width:0}.detail-body dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:14px 20px;background:#f7f9fc;border:1px solid #e9edf4;border-radius:12px;padding:20px;margin:20px 0 24px;font-size:13px}.detail-body dt{color:#7c8ba0}.detail-body dd{margin:0;overflow-wrap:anywhere}.description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;padding:12px 0 22px;line-height:1.9}.field-label{display:block;margin:22px 0 8px;font-size:13px;font-weight:600}.save-button{margin-top:18px;min-height:42px;width:100%}.preview-area,.user-progress{border-top:1px solid var(--border);padding-top:22px;margin-top:24px}.preview-area .muted{margin-top:10px}.message-preview{font-family:inherit;font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f8fd;border:1px solid #dfe8f5;border-radius:10px;padding:16px;margin-top:14px}.user-progress h3{margin-top:12px}.account-search{display:flex;gap:10px;margin:14px 0}.account-row{justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid #e9edf4}.account-row,.account-row-info{display:flex;align-items:center}.account-row-info{gap:7px;flex-wrap:wrap;min-width:0}.account-row-info b{width:100%;font-size:15px;overflow-wrap:anywhere}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px 0;color:var(--muted-foreground);font-size:12px}.account-section{border-top:1px solid var(--border);padding-top:26px;margin-top:26px}.account-editor{background:#f5f8fd;padding:20px;border:1px solid #dbe6f5;border-radius:12px;margin:24px 0}.account-editor .form-actions{display:flex;gap:10px}.audit-row{border-left:2px solid #d9e4f5;padding:0 0 0 14px;margin:18px 0;font-size:13px;overflow-wrap:anywhere}.audit-row time{display:block;color:#8b98aa;font-size:11px;margin-bottom:5px}.account-message{margin-bottom:20px;background:#f1f5fc;color:#47618a;border-color:#dce5f4}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 20px;background:#f1f5fb}.auth-card{width:100%;max-width:460px;border:1px solid var(--border);border-radius:20px;background:#fff;padding:36px;box-shadow:0 12px 40px #253a6009}.auth-brand{font-size:20px;font-weight:650;margin-bottom:30px}.auth-card h1{font-size:26px;margin:8px 0 10px}.auth-form{margin-top:26px}.auth-form .submit-button{width:100%}.auth-card details{margin-top:16px;font-size:13px;color:#64748b}.auth-card summary{cursor:pointer;color:var(--primary);padding:6px 0}.auth-card details p{padding:12px 14px;background:#f6f8fc;border-radius:8px;margin-top:6px}.auth-foot{margin-top:24px;padding-top:18px;border-top:1px solid var(--border);font-size:12px}.auth-back{display:block;color:var(--primary);margin-top:16px;font-size:13px}[data-slot=tabs-content][hidden]{display:none!important}@media(max-width:1240px){.shell main{margin:0 28px}.masthead{padding:18px 28px}}@media(max-width:940px){.submit-layout{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.guide{padding:24px 20px}.masthead{flex-wrap:wrap;gap:16px}.account-bar{margin-left:auto}.panel{padding:24px}}@media(max-width:760px){.shell main{margin:0 18px;padding-top:26px}.masthead{padding:18px;gap:16px}.brand strong{font-size:18px}.account-bar{width:100%;justify-content:flex-start;border-top:1px solid #edf0f5;padding-top:14px;gap:6px}.account-bar .local-label{order:-1}.account-bar [data-slot=button]{font-size:12px;padding:8px}.page-heading{margin-bottom:20px}h1{font-size:25px}.page-description{font-size:13px}.main-tabs{width:100%;margin-bottom:20px}.main-tabs button{flex:1;padding:10px 8px;font-size:13px;gap:6px}.submit-layout{grid-template-columns:minmax(0,1fr)}.guide{display:none}.panel{padding:22px 18px;border-radius:13px}.two-col{grid-template-columns:minmax(0,1fr);gap:20px}.request-form{gap:20px}.account-search input,.detail-body textarea,.request-form [data-slot=select-trigger],.request-form input,.request-form select,.request-form textarea,.toolbar input{font-size:16px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stats>div{padding:16px 18px}.stats strong{font-size:27px}.toolbar{flex-wrap:wrap}.toolbar>input{max-width:none;flex-basis:100%}.toolbar [data-slot=select-trigger]{flex:1}.task-row{flex-direction:column;align-items:stretch;padding:20px 4px;gap:12px}.due{align-self:flex-start;background:#f5f7fb;padding:7px 10px;border-radius:7px}.due small{display:inline;margin-left:10px}.channel-grid{grid-template-columns:1fr;gap:14px}.notification-row{flex-direction:column;align-items:stretch;gap:12px}.notification-actions{justify-content:space-between}.form-bottom{gap:12px}.form-bottom .submit-button{width:100%}footer{font-size:11px}footer span{text-align:right}.detail-sheet [data-slot=sheet-header]{padding:24px 52px 20px 20px}.detail-body{padding:22px 20px 30px}.detail-body dl{grid-template-columns:76px minmax(0,1fr);padding:16px;gap:12px}.auth-card{padding:28px 24px;border-radius:16px}.auth-shell{padding:32px 16px}.auth-brand{font-size:19px}.error-banner{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.email-panel{margin-bottom:24px}.account-email{width:100%;overflow-wrap:anywhere}.department-checks label{display:flex;align-items:center;gap:10px;margin:10px 0}.department-checks input[type=checkbox]{width:18px;min-height:18px;height:18px;accent-color:var(--primary)}.form-actions{display:flex;gap:10px}.email-panel .toolbar,.form-actions{flex-wrap:wrap}.form-controls{border:0!important;padding:0!important;margin:0!important;min-width:0;display:grid;gap:24px;width:100%}.attachment-section{display:grid;gap:12px;min-width:0}.attachment-section>label{font-weight:650}.attachment-section .muted{font-size:13px;line-height:1.7;margin:0}.attachment-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.attachment-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dce5f2;border-radius:10px;background:#f8faff}.attachment-list a,.attachment-list li>span{min-width:0;overflow-wrap:anywhere}.attachment-list a{color:#2e59a6}.attachment-list small{display:block;color:#73839a;font-size:12px;margin-top:4px}.attachment-list button{flex-shrink:0}.badge.rejected{background:#fee2e2;color:#991b1b;border-color:#fecaca}@media(min-width:761px){.stats{grid-template-columns:repeat(5,minmax(0,1fr))}}