:root{--blue:#0068c8;--nav:#0d4169;--yellow:#ffffbd;--line:#bfc7d0;--pale:#e1effc;--muted:#667887;--orange:#9d5700}*{box-sizing:border-box}body{margin:0;background:#f5f7fa;color:#222;font-family:'Microsoft YaHei','SimSun',Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:2px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #0068c8}::selection{background:#bcddfa}button{border:1px solid #a9c5df;border-radius:2px;background:#fff;color:var(--blue);padding:5px 10px}button:hover{background:#e8f4ff}button.primary{background:var(--blue);border-color:var(--blue);color:white}input,select,textarea{border:1px solid var(--line);border-radius:0;padding:5px 6px;min-width:0;color:#222;background:white}input::placeholder,textarea::placeholder{color:#727b81}textarea{resize:vertical}input[readonly]{background:#ececec;color:#555}.top-strip{background:var(--nav);color:#fff;font-size:13px;height:34px}.container{width:min(1200px,calc(100% - 40px));margin:auto}.top-strip .container{display:flex;align-items:center;justify-content:space-between;height:100%}.site-header{background:white}.header-content{display:flex;align-items:center;gap:30px;min-height:110px}.logo{width:310px;height:62px;object-fit:contain}.site-nav{display:flex;gap:24px;align-items:center;margin-left:auto}.site-nav a{color:#253f52;white-space:nowrap}.site-nav .active{color:var(--blue);font-weight:700}.local-tag{border:1px solid #97badb;padding:5px 9px;background:#eff7ff;color:var(--nav);font-size:12px;white-space:nowrap}.catalog-banner{background:#ddecf9 url('./assets/serviceListbg.5e00c972.png') center/cover;height:142px}.catalog-banner .container{padding-top:24px}.crumb{font-size:13px;color:#486a83;margin-bottom:16px}.catalog-banner h1{margin:0;font-size:28px;font-weight:500;color:#163f64}.search-bar{display:flex;margin:24px 0;gap:10px}.search-bar input{flex:1;min-width:0;height:38px;padding:0 12px}.category-tabs{display:flex;gap:0;flex-wrap:wrap;border:1px solid #ccd5df;background:white}.category-tabs button{border:0;border-radius:0;color:#364b60;padding:10px 15px}.category-tabs button.active{background:var(--blue);color:white}.catalog-info{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px;color:#64717d}.catalog-group{display:grid;grid-template-columns:166px 1fr;background:white;border:1px solid #d6dee6;margin-bottom:12px}.category-name{display:flex;align-items:center;gap:10px;padding:20px;background:#edf5fc;color:#164b72;font-size:17px;font-weight:500}.category-name img{width:36px;height:36px;object-fit:contain}.group-links{display:flex;flex-wrap:wrap;gap:0;padding:10px 15px}.group-links button{border:0;color:#354e64;padding:10px 15px;min-width:150px;text-align:left;font-size:14px}.group-links button:hover{color:var(--blue);background:#f1f7fc}.footer{text-align:center;margin-top:32px;border-top:1px solid #d6dee6;padding:22px;color:#596875;line-height:1.8;font-size:12px}.work-header{height:69px;display:flex;align-items:center;background:#0d4169;color:#fff;gap:22px;padding:0 19px}.work-header .logo{width:265px;height:50px;filter:brightness(0) invert(1)}.work-header .title{font-size:18px;border-left:1px solid #758ca0;padding-left:20px}.work-header .local-tag{margin-left:auto}.work-header a{color:white}.work-shell{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:calc(100vh - 69px)}.sidebar{background:#f1f5f9;border-right:1px solid #b5c9dc;overflow-y:auto;max-height:calc(100vh - 69px);position:sticky;top:0}.sidebar-heading{padding:13px 16px;background:#2874ad;color:white}.sidebar details{border-bottom:1px solid #d4dde7}.sidebar summary{cursor:pointer;padding:11px 12px;list-style:none;color:#224a68;background:#e6eef7}.sidebar summary:before{content:'›';margin-right:8px}.sidebar details[open] summary:before{content:'⌄'}.sidebar button{display:block;border:0;border-radius:0;width:100%;text-align:left;background:transparent;color:#485766;padding:9px 12px 9px 27px;font-size:13px;line-height:1.5}.sidebar button.active{background:#cce4fa;color:#005bab}.workspace{min-width:0;background:white}.work-tabs{display:flex;background:#eef1f4;border-bottom:1px solid #cdd5dc;align-items:center;min-height:42px}.work-tabs a{padding:12px 15px;color:#576c7c}.work-tabs .active{background:white;border-top:2px solid var(--blue);color:#24608e;padding:10px 18px}.work-tabs .right{margin-left:auto;font-size:12px}.toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:5px;background:#f0f1f3;border-bottom:1px solid #c5cdd4}.toolbar button{padding:4px 7px;display:inline-flex;align-items:center;gap:4px;font-size:13px}.toolbar .spacer{flex:1}.toolbar svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}.toolbar .danger{color:#b83928}.notice-bar{display:flex;align-items:center;gap:8px;background:#fff8e3;border-bottom:1px solid #e6d3a7;padding:6px 10px;font-size:12px;color:#715a24}.notice-bar button{border:0;background:transparent;padding:0;font-size:12px;color:#7c5b15;text-decoration:underline}.section-tabs{display:flex;gap:0;border-bottom:1px solid #bbccdf;background:#f3f7fb}.section-tabs button{border:0;border-right:1px solid #d2dfeb;padding:8px 18px;border-radius:0;color:#466987;background:transparent}.section-tabs .active{color:var(--blue);background:white;box-shadow:inset 0 -2px var(--blue)}.form-area{padding:8px}.form-columns{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:5px}.form-main{min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin:0;padding:6px 9px;color:#174d7e;background:#e1effc;border:1px solid #bbcfdf;font-weight:500}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.field{display:grid;grid-template-columns:145px minmax(0,1fr);min-height:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.field.span-2{grid-column:span 2}.field-label{display:flex;justify-content:flex-end;align-items:center;padding:3px 6px;text-align:right;font-size:12px;color:#333;border-right:1px solid var(--line);line-height:1.3}.field.required .field-label{color:var(--orange);font-weight:700}.field input,.field select,.field textarea{border:0;background:var(--yellow);width:100%;font-size:13px;padding:3px 5px;height:29px}.field textarea{height:48px;min-height:29px}.field input[readonly]{background:#ececec}.field.optional input,.field.optional select,.field.optional textarea{background:white}.field .param-wrap{display:flex;min-width:0}.param-wrap button{border:0;border-left:1px solid #cbd5de;padding:0 5px;font-weight:bold}.field.error{outline:2px solid #c82823;outline-offset:-2px}.field.error .field-label{color:#b3221d}.table-block{margin-top:5px;border:1px solid #bbcfdf;background:var(--pale)}.mini-toolbar{display:flex;gap:3px;padding:3px;background:white;align-items:center}.mini-toolbar button{font-size:12px;padding:3px 6px;display:inline-flex;gap:3px;align-items:center}.mini-toolbar .right{margin-left:auto;font-size:12px;color:#6b7a86}.table-scroll{overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.data-table th{font-weight:500;color:white;background:#68a5df;border-right:1px solid #b5d2ee;padding:6px 8px;text-align:center}.data-table td{background:white;border-right:1px solid #d3dce4;border-bottom:1px solid #d3dce4;padding:6px 8px;max-width:210px;overflow:hidden;text-overflow:ellipsis}.data-table tbody tr{cursor:pointer}.data-table .selected td{background:#fff6b8}.data-table td.empty{text-align:center;color:#737f88;height:45px;cursor:default}.table-blank{height:88px}.item-editor{margin-top:8px}.item-editor .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-title{display:flex;background:#edf2f7;padding:6px 9px;color:#175080;align-items:center;gap:8px;border:1px solid #c6d6e5}.editor-title button{padding:3px 10px;font-size:12px}.editor-title .right{margin-left:auto}.side-panel{min-width:0}.side-panel .field-grid{grid-template-columns:1fr}.side-panel .field{grid-template-columns:105px minmax(0,1fr)}.side-panel .field.span-2{grid-column:span 1}.side-panel .table-blank{height:55px}.side-panel .data-table th,.side-panel .data-table td{padding:5px 4px}.side-panel h3{font-size:13px}.totals{padding:12px 9px;background:#e1effc;border:1px solid #b8cddd;font-size:12px;line-height:2;color:#304f6e}.help-line{position:sticky;bottom:0;background:white;border-top:1px solid #d2dce6;color:#b92c24;font-size:12px;padding:7px 10px;z-index:2;min-height:30px}.status-line{display:flex;justify-content:space-between;padding:7px 10px;color:#637987;font-size:12px}.empty-state{text-align:center;padding:50px 20px;color:#647988;line-height:2}.empty-state h2{color:#304e67;font-size:20px;font-weight:500}.query-panel{padding:20px}.query-panel .filter-row{display:flex;gap:10px;align-items:end;flex-wrap:wrap;background:#f0f5fa;border:1px solid #cfdae4;padding:15px;margin-bottom:15px}.filter-row label{display:flex;flex-direction:column;gap:6px;color:#435e75;font-size:13px}.filter-row input{width:260px}.records-table th{background:#edf4fb;color:#2e567a;border:1px solid #cbd8e5;font-weight:500}.records-table td{padding:10px;border:1px solid #d6dfe7;font-size:13px}.records-table td button{font-size:12px;margin-right:4px}.status-badge{display:inline-block;padding:2px 7px;background:#ecf3fa;color:#326287;border:1px solid #bdd0e0;font-size:12px}.status-badge.submitted{background:#eaf5ee;color:#277148;border-color:#a1d5b2}.status-badge.returned{background:#fff0e8;color:#a44a25;border-color:#e2bc9f}.dialog-backdrop{position:fixed;inset:0;background:rgba(8,33,55,.38);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.dialog{width:min(780px,100%);max-height:90vh;background:white;box-shadow:0 12px 45px rgba(0,24,55,.26);display:flex;flex-direction:column;border-radius:3px;overflow:hidden}.dialog-header{padding:13px 18px;background:#166da8;color:white;display:flex;justify-content:space-between;align-items:center;font-size:16px}.dialog-header button{color:white;background:transparent;border:0;padding:0 5px;font-size:20px}.dialog-body{padding:20px;overflow:auto;line-height:1.8}.dialog-body .field-grid{margin:10px 0}.dialog-body p:first-child{margin-top:0}.dialog-footer{display:flex;gap:8px;justify-content:flex-end;padding:12px 18px;background:#f3f6fa;border-top:1px solid #d6dfe7}.dialog-body .search-bar{margin:0 0 12px}.parameter-list{max-height:350px;overflow:auto;border:1px solid #b8cddd}.parameter-list button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #e1e7ee;border-radius:0;padding:8px 12px}.validation-list{margin:0;padding-left:22px;color:#b12823}.reference-image{width:100%;border:1px solid #c7d5e2;margin-top:15px}.attachment-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #d3dde6;padding:10px 0}.attachment-row .name{flex:1;overflow-wrap:anywhere}.file-input{width:100%;padding:15px;border:1px dashed #9cb4cb;background:#f4f8fc}.history-list{padding:0;list-style:none}.history-list li{padding:10px 0;border-bottom:1px solid #d4dee8}.history-list time{color:#748592;font-size:12px;margin-right:16px}.teaching-help{background:#f2f7fc;border:1px solid #ccdcea;padding:15px;line-height:1.8}.teaching-help li{margin:7px 0}#toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);background:#14577f;color:white;padding:12px 22px;z-index:150;box-shadow:0 4px 16px #0003;max-width:90%;pointer-events:none;display:none}#toast.visible{display:block}.print-title{display:none}.coverage-line{font-size:12px;color:#856215}.results-count{font-size:13px;color:#50687d}.item-list{list-style:none;padding:0;margin:0}.item-list li{padding:10px 0;border-bottom:1px solid #d8e1e9;display:flex;gap:15px;align-items:center}.item-list button{margin-left:auto;white-space:nowrap}.item-select{max-width:440px;height:28px;font-size:12px;padding:3px}.form-body-full{padding:12px}.icon-fallback{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:#2778b5}.icon-fallback svg{width:30px;fill:none;stroke:currentColor;stroke-width:1.5}.home-actions{display:flex;gap:8px}.attachment-note{color:#7a631f;font-size:12px}.row-actions{display:flex;gap:5px;margin:8px 0}.mobile-menu{display:none}.category-name{overflow-wrap:anywhere}.readonly-banner{background:#e9f5ed;border-bottom:1px solid #b2d5bb;color:#2b6640;padding:9px 12px;font-size:13px}body.modal-open{overflow:hidden}.export-note{font-size:12px;color:#6a7985}@media(min-width:1600px){.field input,.field select{font-size:14px}.field-label{font-size:13px}.field{min-height:32px}.field input,.field select{height:31px}}@media(max-width:1100px){.site-nav{gap:13px}.site-nav a:nth-child(n+4){display:none}.form-columns{grid-template-columns:minmax(0,1fr)}.side-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px}.side-panel .totals{grid-column:span 2}.field{grid-template-columns:125px minmax(0,1fr)}}@media(max-width:750px){.container{width:calc(100% - 24px)}.header-content{min-height:91px;gap:10px;flex-wrap:wrap;padding:15px 0}.logo{width:255px;height:51px}.site-nav{width:100%;margin:0;gap:20px}.site-nav a:nth-child(n+3){display:none}.header-content .local-tag{margin-left:auto}.top-strip{height:30px;font-size:11px}.top-strip .right-note{display:none}.catalog-banner{height:115px}.catalog-banner h1{font-size:24px}.category-tabs button{padding:8px 10px;font-size:12px}.catalog-group{grid-template-columns:1fr}.category-name{padding:10px 15px;font-size:16px}.group-links{padding:5px}.group-links button{min-width:46%;max-width:100%;padding:10px;font-size:13px}.home-actions{flex-wrap:wrap}.catalog-info{gap:10px;align-items:start;flex-direction:column}.work-header{height:60px;padding:0 12px;gap:10px}.work-header .logo{width:190px}.work-header .title{display:none}.work-header .local-tag{font-size:11px;padding:4px}.work-shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.sidebar.show{display:block;position:fixed;top:60px;left:0;width:235px;z-index:30;box-shadow:8px 0 20px #16385533;height:calc(100vh - 60px)}.mobile-menu{display:inline-flex}.work-tabs .right{display:none}.toolbar{gap:3px}.toolbar button{font-size:12px}.form-main>.field-grid,.item-editor .field-grid{min-width:690px}.form-main{overflow:auto}.section-tabs button{font-size:12px;padding:7px 10px}.notice-bar{align-items:start}.side-panel{grid-template-columns:1fr}.side-panel .totals{grid-column:span 1}.query-panel{padding:10px}.dialog-backdrop{padding:10px}.dialog-body{padding:14px}.dialog-body .field-grid{grid-template-columns:1fr}.dialog-body .field.span-2{grid-column:1}.field-label{font-size:12px}.item-select{max-width:200px}.search-bar{flex-wrap:wrap}.search-bar input{flex-basis:70%}.item-list li{align-items:start;font-size:13px}.status-line{flex-wrap:wrap;gap:5px}.footer{padding:15px 10px}}@media print{body{background:white;font-family:SimSun,serif}.top-strip,.site-header,.work-header,.sidebar,.work-tabs,.toolbar,.notice-bar,.section-tabs,.mini-toolbar,.editor-title button,.side-panel,.help-line,.status-line,.dialog-backdrop,#toast,.row-actions{display:none!important}.work-shell{display:block}.print-title{display:block;text-align:center;margin:15px;font-size:18px}.workspace,.form-main{overflow:visible}.form-columns{display:block}.form-area{padding:0}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;min-width:0!important}.field{grid-template-columns:130px minmax(0,1fr);break-inside:avoid}.field input,.field select,.field textarea{background:white!important;color:black}.data-table{white-space:normal}.data-table th{background:#eee;color:black}.table-blank,.item-editor{display:none}.data-table td.empty{height:20px}.section-heading{background:#eee;color:black}.table-scroll{overflow:visible}.table-block{break-inside:avoid}.print-extra{display:block!important}}
