:root{color:#243932;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green:#2e6451;--muted:#6e7b74;--line:#e1e6df;background:#f5f6f2;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.data-form{gap:10px;margin-top:24px;display:grid}.editor-fields{border:0;gap:12px;min-width:0;padding:0;display:grid}.editor-fields label{gap:8px;display:grid}.data-form label{color:#42564b;margin-top:7px;font-size:12px}input,textarea{width:100%;font:inherit;color:#243932;background:#fff;border:1px solid #d8e0d7;border-radius:7px;min-height:42px;padding:11px 12px;font-size:13px}select{border:1px solid var(--line);width:100%;color:inherit;font:inherit;background:#fff;border-radius:7px;padding:12px}.import-preview{margin-top:25px}.import-preview>p{margin:12px 0}.export-actions{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}.product-photo{object-fit:cover;border-radius:8px;width:64px;height:64px}.product-main>img{object-fit:cover;border-radius:10px;width:70px;height:70px}input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #5d967c}input:disabled{color:#7c887e;cursor:not-allowed;background:#f0f3ec}textarea{resize:vertical}.primary-button{border:1px solid var(--green);background:var(--green);color:#fff;cursor:pointer;border-radius:7px;min-height:44px;margin-top:12px;padding:12px 20px;font-size:13px}.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:wait}.secondary-button{color:var(--green);cursor:pointer;font:inherit;background:#fff;border:1px solid #b4c6b2;border-radius:7px;min-height:42px;margin-top:15px;padding:10px 18px;font-size:12px}.form-panel{max-width:620px}.form-error{color:#944836;background:#fcf0e9;border:1px solid #f1d8ca;border-radius:7px;margin:18px 0;padding:13px 16px;font-size:12px;line-height:1.8}.form-success{color:#35624a;background:#eaf2e6;border:1px solid #d4e3cb;border-radius:7px;margin:18px 0;padding:13px 16px;font-size:12px;line-height:1.8}.login-card>.small{margin-top:18px}.management-grid{grid-template-columns:minmax(260px,.85fr) minmax(0,1.4fr);align-items:start;gap:24px;margin-top:25px;display:grid}.management-grid .data-form{margin:0}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}th{color:#6a7b6a;white-space:nowrap;background:#f4f7f0;padding:15px;font-weight:550}td{border-top:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;padding:14px 15px;line-height:1.8}td small{color:var(--muted);margin-top:4px;font-size:10px;display:block}td .text-button{white-space:nowrap;padding:3px 8px 3px 0}.checkbox-label{align-items:center;gap:9px;display:flex}.checkbox-label input{width:16px;min-height:16px}.link-result{margin-top:20px;padding:20px}.link-result label{margin-bottom:10px;font-size:11px;display:block}.link-result input{margin-bottom:10px;font-family:monospace;font-size:10px}.operations-table{margin-top:25px}.operations-table summary{cursor:pointer;color:var(--green);padding:8px 0;font-size:11px}.operations-table pre{white-space:pre-wrap;word-break:break-all;background:#f4f6f0;max-height:260px;padding:12px;font-size:10px;overflow:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.management-grid{grid-template-columns:1fr}}@media (width<=600px){.admin-sidebar nav{flex-wrap:wrap}}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline-offset:5px;outline:3px solid #5d967c}h1,h2,h3,p{margin:0}h2{font-size:19px;font-weight:600}.brand{letter-spacing:.5px;align-items:center;gap:11px;font-size:15px;font-weight:650;display:inline-flex}.brand-mark{color:#fff;background:var(--green);border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:inline-flex}.employee-shell{max-width:1000px;margin:auto;padding:0 40px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:90px;display:flex}.edition{color:var(--muted);font-size:12px}.employee-main{max-width:520px;margin:60px auto 50px}.registration-main{max-width:580px}.registration-intro{margin-bottom:28px}.full-width{width:100%}.identity-name{overflow-wrap:anywhere;margin:24px 0 8px;font-size:30px;font-weight:550;display:block}.identity-card>p{overflow-wrap:anywhere}.identity-quota{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:20px 0;padding:18px 0;font-size:12px;display:flex}.identity-quota strong{color:var(--green);font-size:22px;font-weight:550}.participant-strip{background:#eaf0e5;border:1px solid #dce5d5;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin:24px 0;padding:18px 20px;display:flex}.participant-strip strong{overflow-wrap:anywhere;font-size:15px;display:block}.participant-strip div{min-width:0}.participant-strip span:not(.pill){color:var(--muted);margin-top:6px;font-size:11px;display:block}.participant-strip .pill{flex-shrink:0}.catalog-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-top:30px;display:flex}.catalog-heading h2{overflow-wrap:anywhere;font-size:20px;line-height:1.6}.catalog-heading>span{color:var(--muted);white-space:nowrap;margin-bottom:5px;font-size:11px}.catalog-deadline{margin:12px 0 22px}.product-list{gap:14px;display:grid}.product-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:22px}.product-main{align-items:flex-start;gap:16px;display:flex}.product-placeholder{color:#78906b;background:#f1f3e9;border-radius:10px;flex-shrink:0;place-items:center;width:50px;height:56px;font-size:22px;display:grid}.product-information{min-width:0}.product-information h3{overflow-wrap:anywhere;font-size:17px;font-weight:550;line-height:1.6}.product-information p{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;font-size:12px;line-height:1.7}.product-information .product-description{font-size:11px}.product-information .pill{margin-bottom:6px}.product-bottom{justify-content:space-between;align-items:center;gap:12px;margin-top:24px;display:flex}.product-price strong{color:var(--green);font-size:18px;font-weight:550}.product-price span{color:var(--muted);white-space:nowrap;margin-left:3px;font-size:10px}.quantity-control{border:1px solid #dbe3d7;border-radius:7px;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.quantity-control button{width:34px;height:38px;color:var(--green);cursor:pointer;background:#f2f5ed;border:0;font-size:20px}.quantity-control button:disabled{color:#bdc8b8;cursor:not-allowed}.quantity-control input{appearance:textfield;text-align:center;border:0;border-radius:0;width:50px;min-height:38px;padding:8px 3px;font-size:13px}.quantity-control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.selection-summary{z-index:2;background:#fff;border:1px solid #d6e0d0;border-radius:14px;margin-top:22px;padding:22px;position:sticky;bottom:12px;box-shadow:0 -4px 25px #24393209}.budget-line{justify-content:space-between;gap:18px;margin-bottom:12px;font-size:12px;display:flex}.budget-line span{color:var(--muted)}.budget-line strong{font-weight:550}.remaining-line{border-top:1px solid var(--line);padding-top:14px}.remaining-line strong{color:var(--green);font-size:20px}.over-budget strong,.selection-error{color:#a24b37}.selection-error{font-size:12px;line-height:1.7}.registration-review>h2,.registration-result>h2{margin-bottom:13px}.receipt-items{border-top:1px solid var(--line);margin-top:24px}.receipt-item{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding:17px 0;font-size:12px;display:flex}.receipt-item div{min-width:0}.receipt-item strong{overflow-wrap:anywhere;font-weight:550}.receipt-item>strong{flex-shrink:0}.receipt-item p{color:var(--muted);margin-top:7px;font-size:11px;line-height:1.8}.receipt-total{justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:13px;display:flex}.receipt-total strong{color:var(--green);font-size:24px;font-weight:550}.receipt-metadata{border:1px solid var(--line);background:#f8faf4;border-radius:9px;margin:25px 0 0;padding:18px;font-size:11px}.receipt-metadata>div+div{margin-top:15px}.receipt-metadata dt{color:var(--muted)}.receipt-metadata dd{overflow-wrap:anywhere;margin:6px 0 0;line-height:1.7}.receipt-id{font-family:monospace;font-size:10px}.success-icon{width:46px;height:46px;color:var(--green);background:#e9f2e3;border-radius:50%;place-items:center;margin-bottom:25px;font-size:23px;display:grid}.admin-registration-detail{margin-top:25px}@media (width<=420px){.product-card{padding:18px}.product-placeholder{width:40px;height:46px}.product-main{gap:12px}.product-bottom{align-items:flex-end}.product-price strong{font-size:16px}.product-price span{margin-top:5px;display:block}.quantity-control input{width:48px}.quantity-control button{width:32px}}.eyebrow{letter-spacing:2px;color:var(--green);margin-bottom:12px;font-size:10px;font-weight:650}.intro{margin-bottom:32px}.intro h1{letter-spacing:-1.8px;font-size:clamp(34px,6vw,45px);font-weight:550;line-height:1.35}.intro-description{color:var(--muted);margin-top:18px;font-size:14px;line-height:1.9}.notice-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:30px;box-shadow:0 8px 30px #233d2e04}.notice-icon{width:42px;height:42px;color:var(--green);background:#edf3eb;border-radius:13px;justify-content:center;align-items:center;margin-bottom:22px;font-size:24px;display:flex}.pill{color:#64715c;background:#eef1e9;border:1px solid #e3e8dc;border-radius:5px;padding:4px 8px;font-size:10px;display:inline-block}.notice-card h2{margin:13px 0 10px;font-size:22px}.notice-card>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.9}.notice-divider{background:var(--line);height:1px;margin:25px 0}.steps{gap:20px;margin:0;padding:0;list-style:none;display:grid}.steps li{gap:15px;display:flex}.steps li>span{color:#98a69b;padding-top:3px;font-family:monospace;font-size:12px}.steps strong{font-size:13px;font-weight:550}.steps p{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.7}.service-status{border:1px solid var(--line);background:#fff9;border-radius:14px;margin-top:24px;padding:25px}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading .eyebrow{margin-bottom:6px;font-size:9px}.service-status h2{font-size:14px}.text-button{cursor:pointer;color:var(--green);background:0 0;border:0;min-height:36px;font-size:11px}.text-button:disabled{color:var(--muted);cursor:wait}.status-list{margin:17px 0 13px}.status-row{border-bottom:1px solid #e9ece6;justify-content:space-between;gap:12px;padding:12px 0;font-size:12px;display:flex}.status-value{color:#7c806e;align-items:center;gap:7px;display:inline-flex}.status-value i{background:currentColor;border-radius:50%;width:6px;height:6px}.status-value[data-status=available]{color:#317657}.status-value[data-status=unavailable]{color:#a16a34}.muted{color:var(--muted);line-height:1.7}.small{font-size:11px}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:16px;padding:20px 0 30px;font-size:11px;line-height:1.8;display:flex}.admin-shell{min-height:100vh;display:flex}.admin-sidebar{border-right:1px solid var(--line);background:#fafbf8;flex-direction:column;width:236px;padding:30px 22px;display:flex;position:fixed;top:0;bottom:0}.admin-sidebar .brand{white-space:nowrap;font-size:14px}.sidebar-label{letter-spacing:1.8px;color:#8d988f;margin:48px 12px 15px;font-size:9px}.sidebar-link{color:var(--muted);border-radius:7px;align-items:center;gap:12px;margin-bottom:5px;padding:13px 14px;font-size:12px;display:flex}.sidebar-link.active{color:var(--green);background:#eaf0e7;font-weight:600}.sidebar-footer{border-top:1px solid var(--line);margin-top:auto;padding:16px 12px 0}.sidebar-footer p{color:var(--muted);margin-top:10px;font-size:10px}.admin-content{flex:1;min-width:0;margin-left:236px}.admin-topbar{border-bottom:1px solid var(--line);height:72px;color:var(--muted);background:#fafbf8;justify-content:space-between;align-items:center;gap:18px;padding:0 42px;font-size:11px;display:flex}.admin-main{max-width:1100px;margin:0 auto;padding:46px 42px 70px}.admin-page-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-page-heading h1{letter-spacing:-1px;margin-bottom:10px;font-size:31px;font-weight:550}.admin-page-heading .muted{font-size:13px}.admin-notice{background:#edf2e9;border:1px solid #dce6d6;border-radius:9px;margin-top:30px;padding:18px 22px;font-size:12px;line-height:1.8}.admin-notice strong{font-weight:550}.admin-notice p{color:#6c7b65;margin-top:5px}.admin-main .service-status{background:#fff}.module-section{margin:34px 0 25px}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px;display:grid}.module-card{border:1px solid var(--line);background:#fff;border-radius:11px;padding:23px}.module-index{color:#94a18e;font-family:monospace;font-size:11px}.module-card h3{margin:22px 0 10px;font-size:15px;font-weight:550}.module-card p{color:var(--muted);min-height:68px;font-size:12px;line-height:1.9}.module-milestone{border-top:1px solid var(--line);color:#7b8874;margin-top:10px;padding-top:15px;font-size:10px;display:block}.centered-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{width:100%;max-width:420px;padding:36px}.login-card .brand-mark{margin-bottom:32px}.login-card h1{margin:14px 0;font-size:28px;font-weight:550}.primary-link{text-align:center;background:var(--green);color:#fff;border-radius:8px;margin-top:28px;padding:13px 18px;font-size:13px;display:block}.secondary-link{text-align:center;color:var(--muted);padding:18px 0 0;font-size:12px;display:block}@media (width<=900px){.admin-sidebar{width:200px;padding:25px 15px}.admin-content{margin-left:200px}.admin-topbar{padding:0 25px}.admin-main{padding:35px 25px}.module-grid{grid-template-columns:1fr}.module-card p{min-height:0}}@media (width<=600px){.employee-shell{padding:0 22px}.site-header{height:75px}.employee-main{margin:38px auto 35px}.intro{margin-bottom:26px}.notice-card{padding:25px}.service-status{padding:21px}.site-footer{flex-direction:column;gap:8px}.admin-shell{display:block}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;padding:20px;position:static}.admin-sidebar nav{gap:10px;margin-top:16px;display:flex}.sidebar-label,.sidebar-footer{display:none}.admin-content{margin:0}.admin-main{padding:30px 20px}.admin-page-heading h1{font-size:26px}.section-heading{align-items:flex-start}}
