*{box-sizing:border-box}body{margin:0;background:#f5f7f8;color:#203a37;font:14px/1.6 "Microsoft YaHei",system-ui,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #a3cfba;outline-offset:3px}aside{width:226px;background:#fff;position:fixed;inset:0 auto 0 0;padding:34px 22px;border-right:1px solid #e4eae8;z-index:2}.brand{font-size:27px;font-weight:800;color:#16826a;display:flex;gap:9px;align-items:center}.brand span{font-size:21px;letter-spacing:1px}.workspace{font-size:10px;letter-spacing:3px;margin:9px 0 32px;color:#98a6a3}.nav-label{font-size:10px;color:#a4b2a9;padding:16px}.nav-label:not(:first-child){margin-top:18px}nav button{width:100%;border:0;background:transparent;text-align:left;padding:13px 16px;margin-bottom:8px;color:#778782;border-radius:7px}nav .active{color:#08775d;background:#e9f5ef;font-weight:700}nav button:hover{background:#f2f7f4}.side-note{position:absolute;bottom:30px;color:#9aa6a2;font-size:11px;line-height:2.2}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#34a17b;margin-right:5px}main{margin-left:226px;padding:0 42px;max-width:1800px}header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e1e8e5;font-size:12px;color:#8a9994}header b{font-weight:400;color:#4e665e}.slash{padding:0 14px;color:#b6c2b9}.user-menu{display:flex;gap:15px;align-items:center}.intro{display:flex;align-items:center;justify-content:space-between;padding:34px 0 28px;gap:18px}.eyebrow{font-size:10px;letter-spacing:2px;color:#7a9a8b;font-weight:700}h1{font-size:29px;letter-spacing:-1px;margin:8px 0}p{color:#7f9085;margin:6px 0}.steps{display:flex;align-items:center;gap:20px;padding:17px 24px;background:#edf2ef;border-radius:8px;margin-bottom:24px;color:#82968b;font-size:12px}.steps .selected{color:#168166;font-weight:700}.steps i{width:55px;height:1px;background:#cfded5}.grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(470px,1.5fr);gap:24px;align-items:start}.card{background:#fff;border:1px solid #e4ebe7;border-radius:12px;padding:24px;box-shadow:0 5px 20px #264d3808}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px;gap:10px}h2{font-size:16px;margin:0;font-weight:700}.muted{font-size:11px;color:#84978a}.tag{background:#f7f2e3;padding:4px 9px;border-radius:5px;color:#917637;font-size:11px;white-space:nowrap}.tag.confirmed{background:#eaf5ed;color:#30845c}.drop{border:1px dashed #b9d3c5;border-radius:8px;background:#f7fbf9;display:flex;align-items:center;flex-direction:column;padding:25px 10px;cursor:pointer;gap:6px}.drop.dragover{background:#e4f3e9}.drop>span{font-size:11px;color:#82978a}.upload-icon{font-size:30px;color:#308e6e;background:#e6f2eb;width:48px;text-align:center;border-radius:12px;margin-bottom:6px}.drop .upload-button{color:#278365;background:#fff;border:1px solid #c6dfd1;padding:7px 20px;border-radius:5px;margin-top:10px}#preview{width:100%;max-height:360px;object-fit:contain;display:block;cursor:zoom-in;background:#f4f7f4;margin-top:16px;border-radius:6px}.divider{font-size:11px;text-align:center;margin:22px 0 12px;color:#8b9f90}textarea,input,select{border:1px solid #dfe7e1;border-radius:6px;background:#fff;color:#344e43;padding:10px;outline:none;max-width:100%}textarea{width:100%;resize:vertical;font-size:12px}input:focus,textarea:focus,select:focus{border-color:#26926f;box-shadow:0 0 0 2px #e8f4ec}.primary,.secondary{border:0;border-radius:6px;color:#fff;background:#168466;padding:10px 20px;font-size:13px;white-space:nowrap}.primary:hover{background:#106d53}.secondary{background:#fff;border:1px solid #d6e3da;color:#3f7560}.secondary:hover{background:#f2f7f3}.full{width:100%;margin-top:12px}.quiet{border:0;background:transparent;color:#6f8b79;padding:8px;font-size:12px}.quiet:hover,.text-button:hover{color:#0d7051}.import-actions{display:flex;justify-content:space-between;margin-top:8px}.hint{font-size:11px;line-height:1.9;color:#849789;margin-top:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}.fields label,.note-label{font-size:12px;color:#6b8373}.fields input{display:block;width:100%;margin-top:8px}.required{color:#c78d7e}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:390px}th{background:#f5f8f5;font-size:11px;color:#788e7d;font-weight:400;padding:12px 9px;white-space:nowrap}td{padding:14px 7px;border-bottom:1px solid #edf1ed;font-size:12px}#rows td input{width:100%;min-width:50px;padding:8px 5px;font-size:12px}#rows td:first-child{width:35%}#rows td:nth-child(2){width:23%}#rows td:nth-child(3){width:16%}#rows td:nth-child(4){width:23%}td .remove-row{border:0;background:none;color:#a3ada7;font-size:18px}.add{border:0;background:none;color:#25866a;font-size:12px;padding:18px 0}.total{background:#f6f9f6;border:1px solid #e8eee8;border-radius:7px;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;margin-top:14px}.total span{font-size:13px}.total small{display:block;color:#8fa494;font-size:9px;margin-top:5px}.total strong{font-size:29px;color:#14795b;letter-spacing:-1px}.bill-total{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap;font-size:12px}.bill-total input{width:140px}.text-button{border:0;padding:0;background:transparent;font-size:11px;color:#368567}.note-label{display:block;margin-top:20px}.note-label textarea{margin-top:8px}.save-area{border-top:1px solid #edf1ec;margin-top:25px;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px}.save-area>div{display:flex;gap:10px}footer{padding:32px 0;color:#95a69a;font-size:11px;display:flex;justify-content:space-between}#notice{padding:12px 18px;background:#e5f2e9;border:1px solid #d2e6d7;border-radius:7px;margin-bottom:18px;color:#246d4a;font-size:13px;overflow-wrap:anywhere}#notice.error,.error-text{color:#a44229}#notice.error{background:#fff0e9;border-color:#efd8cb}.error-text{font-size:12px;min-height:20px}.warning-box{background:#fffaed;border:1px solid #f0e3bd;border-radius:6px;padding:12px 15px;font-size:11px;color:#91713b;margin-bottom:20px}.warning-box ul{padding-left:16px;margin:0}.mismatch{color:#b0612a!important}button:disabled{opacity:.5;cursor:default}input:disabled,textarea:disabled{background:#f7f9f7;color:#6f8275}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:27px}.stats article{background:#fff;border:1px solid #e4ebe7;border-radius:10px;padding:23px}.stats article>span{display:block;color:#7b9081;font-size:12px}.stats strong{font-size:31px;display:block;margin:9px 0;letter-spacing:-1px;font-weight:600}.stats small{color:#91a496;font-size:10px}.stats .pending-stat{background:#edf6ef;border-color:#d5e6d9}.pending-stat strong{color:#2c8863}.overview-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:start}.guide h2{font-size:20px;margin-top:14px}.guide ol{padding:0;list-style:none;counter-reset:guide;margin:30px 0}.guide li{counter-increment:guide;padding-left:42px;position:relative;margin:24px 0}.guide li:before{content:counter(guide,decimal-leading-zero);position:absolute;left:0;top:3px;font-size:12px;background:#edf6f0;color:#4b956e;width:28px;height:28px;border-radius:50%;display:grid;place-items:center}.guide li strong{font-size:13px}.guide li span{display:block;color:#8ca091;font-size:11px;margin-top:4px}.recent-item{padding:19px 0;border-top:1px solid #edf1ed;display:flex;justify-content:space-between;align-items:center;gap:12px}.recent-item button{border:0;background:transparent;padding:0;color:#385e4a;font:inherit;text-align:left}.recent-item small{display:block;font-size:10px;color:#8fa293;margin-top:5px}.recent-item>div:last-child{text-align:right}.recent-item .tag{margin-top:5px;display:inline-block}.empty{text-align:center;padding:55px 20px;color:#8ca091;font-size:13px}.empty .empty-icon{font-size:34px;color:#acc3b5;margin-bottom:12px}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:20px;background:#f6f8f6;border-radius:8px;margin-bottom:16px}.filters label{font-size:10px;color:#84988a}.filters input,.filters select{display:block;margin-top:6px;max-width:180px;font-size:12px;padding:9px}.filters label:first-child{flex:1;min-width:150px}.filters label:first-child input{max-width:none;width:100%}.selection-bar{display:flex;gap:18px;padding:10px 3px 17px;font-size:10px;color:#8b9e90}.selection-bar label{display:flex;gap:6px;align-items:center}.bill-table{min-width:760px}.bill-table td small,.account-table td small{display:block;color:#93a298;font-size:10px}.bill-table td:first-child{width:26px}.bill-table td:nth-child(2){min-width:140px}.bill-table td:nth-child(4){font-weight:600}.row-actions{display:flex;gap:10px;white-space:nowrap}.row-actions button{border:0;background:none;color:#3b8967;padding:0;font-size:11px}.row-actions .danger{color:#b47b6e}.pager{display:flex;justify-content:flex-end;align-items:center;gap:18px;padding-top:22px;font-size:11px;color:#86978c}.pager button{padding:5px 12px;background:#fff;border:1px solid #dbe5de;border-radius:5px;color:#64806e}.count{color:#96a99c;font-weight:400;font-size:12px;margin-left:8px}.log-table{min-width:580px}.log-table td:last-child{max-width:400px;overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.stack-form label{display:block;font-size:12px;color:#7b9081;margin-bottom:16px}.stack-form input{display:block;width:100%;margin-top:7px}.system-info{display:grid;grid-template-columns:100px 1fr;gap:17px;font-size:12px;margin:28px 0}.system-info dt{color:#90a095}.system-info dd{margin:0}.account-table{min-width:640px}.auth-screen{min-height:100vh;background:radial-gradient(ellipse at 20% 20%,#e4f2e9,transparent 60%),#f4f7f4;display:grid;place-items:center;padding:24px}.auth-card{width:430px;max-width:100%;padding:44px;background:white;border:1px solid #e0e9e0;border-radius:16px;box-shadow:0 25px 80px #1d513014}.auth-card .eyebrow{margin:20px 0}.auth-card h1{font-size:27px}.auth-card p{font-size:12px}.auth-card label,dialog label{display:block;font-size:12px;color:#728879;margin-top:18px}.auth-card input,dialog input,dialog select{display:block;width:100%;margin-top:7px}.auth-card form{margin-top:28px}.auth-card small{font-size:10px;color:#9dae9f}.auth-card .full{margin-top:26px}dialog{border:1px solid #dbe5dc;border-radius:12px;padding:28px;width:440px;max-width:calc(100% - 30px);color:#294e38;box-shadow:0 25px 70px #193a242a}dialog::backdrop{background:#163f2d55;backdrop-filter:blur(3px)}dialog .checkbox-label{display:flex;gap:10px;align-items:center}dialog .checkbox-label input{display:inline;width:auto;margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(min-width:1500px){main{padding:0 55px}.stats{gap:24px}}@media(max-width:1200px){aside{width:190px;padding:28px 18px}main{margin-left:190px;padding:0 25px}.stats{gap:12px}.stats article{padding:17px}.stats strong{font-size:26px}.grid{grid-template-columns:minmax(250px,.8fr) minmax(390px,1.3fr)}.card{padding:20px}.save-area{flex-wrap:wrap}.overview-grid{grid-template-columns:1.4fr 1fr}}@media(max-width:1000px){.grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.overview-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.intro p{font-size:12px}h1{font-size:26px}}@media(max-width:650px){aside{position:static;width:auto;padding:15px 16px 9px;border-bottom:1px solid #e2eae3}.brand span{font-size:19px}.workspace,.side-note,.nav-label{display:none}nav{display:flex;margin-top:13px;overflow-x:auto;gap:6px}nav button{width:auto;white-space:nowrap;margin:0;padding:9px 10px;font-size:11px}main{margin:0;padding:0 16px}header{height:51px;font-size:10px}.user-menu{gap:5px}.intro{padding:25px 0;align-items:start}h1{font-size:21px}.intro p{font-size:11px}.intro>.primary{font-size:10px;padding:8px 10px;margin-top:5px}.steps{gap:7px;padding:14px 10px;font-size:10px}.steps i{width:20px}.card{padding:17px}.fields{gap:10px}.save-area{flex-wrap:wrap}.stats{gap:10px;margin-bottom:20px}.stats article{padding:16px}.stats strong{font-size:26px}.stats small{font-size:9px}.stats article>span{font-size:11px}.filters{gap:10px;padding:13px}.filters label{width:calc(50% - 5px)}.filters label:first-child{flex:auto;width:100%}.filters input,.filters select{width:100%;max-width:none}.filters button{margin-top:4px}.card-title{flex-wrap:wrap;gap:10px}.bill-total{gap:8px}.bill-total input{width:130px}.auth-card{padding:30px}.selection-bar{flex-wrap:wrap;gap:10px}.overview-grid{gap:20px}.log-table{min-width:550px}.save-area>div{margin-left:auto}.grid{gap:20px}footer{font-size:10px}}
@media(max-width:650px){.intro{flex-direction:column;align-items:stretch;gap:18px}.intro>#quickNew{width:100%;min-height:50px;margin:0;padding:14px 20px;font-size:16px;font-weight:600;border-radius:9px;text-align:center;touch-action:manipulation}}
.upload-status{margin-top:14px;padding:14px;background:#edf6ef;border-radius:8px;color:#287751;font-size:12px}.upload-status progress{display:block;width:100%;height:8px;margin:10px 0;accent-color:#168466}.upload-status button{padding:4px 0;color:#805b38}
.upload-status.upload-error{background:#fff0e9;color:#a44229}.upload-status.upload-error progress{display:none}
.mobile-steps,.mobile-only{display:none}.editor-options{margin:16px 0}.editor-options summary{cursor:pointer;color:#42816c;font-size:13px;padding:10px 0}.editor-options textarea{width:100%;margin-top:10px}
@media(max-width:650px){
body[data-page="editor"] header{height:38px}body[data-page="editor"] .intro{padding:12px 0;gap:0}body[data-page="editor"] .intro .eyebrow,body[data-page="editor"] #subtitle,body[data-page="editor"] footer{display:none}body[data-page="editor"] h1{font-size:19px;margin:0}body[data-page="editor"] #notice{margin:8px 0;padding:10px}
#page-editor .steps{display:none}.mobile-steps{display:flex;gap:6px;background:#e8efeb;border-radius:9px;padding:4px;margin-bottom:12px}.mobile-steps button{flex:1;border:0;border-radius:6px;padding:11px 6px;background:transparent;color:#71867c;font-weight:600}.mobile-steps button.active{background:#fff;color:#107b61;box-shadow:0 1px 4px #244d3512}.mobile-only{display:block}
#page-editor[data-mobile-step="import"] .details,#page-editor[data-mobile-step="details"] .import{display:none}#page-editor .card{padding:14px}#page-editor .card-title{margin-bottom:12px}#page-editor .drop{padding:17px 8px;gap:5px}#page-editor .upload-icon{width:36px;font-size:24px;margin:0}#page-editor .drop .upload-button{margin-top:5px;padding:8px 16px}#page-editor .full{margin-top:12px;min-height:44px}#page-editor #preview{max-height:150px;object-fit:contain}#page-editor #source{height:120px;min-height:100px}#page-editor .editor-options{margin:10px 0;border-top:1px solid #edf0ee}#page-editor .hint{font-size:11px;line-height:1.6}
#page-editor .fields{margin-bottom:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#page-editor .fields label{min-width:0;font-size:12px}#page-editor input{min-width:0;max-width:100%;padding:9px 6px;font-size:16px}#page-editor .table-wrap{margin:12px 0 0;overflow:visible}#page-editor table{width:100%;min-width:0;table-layout:fixed}#page-editor th{padding:7px 2px;font-size:10px;white-space:nowrap}#page-editor td{padding:8px 2px}#page-editor td input{width:100%;font-size:14px;padding:9px 4px}#page-editor th:first-child,#page-editor td:first-child{width:32%}#page-editor th:nth-child(2){width:21%}#page-editor th:nth-child(3){width:15%}#page-editor th:nth-child(4){width:24%}#page-editor th:last-child{width:8%}#page-editor .remove-row{padding:6px 0;width:100%}#page-editor .add{margin:0;padding:10px 0}#page-editor .total{margin:10px 0;padding:12px 14px}#page-editor .total strong{font-size:25px}#page-editor .total small{display:none}#page-editor .bill-total{margin-top:10px;gap:6px;font-size:11px;flex-wrap:wrap}#page-editor .bill-total input{width:110px;font-size:14px}#page-editor .note-label{margin:0}#page-editor #note{height:64px;min-height:64px}#page-editor .save-area{margin-top:14px;padding-top:12px;gap:8px;flex-wrap:nowrap}#page-editor .save-area>div{display:flex;gap:6px}#page-editor .save-area button{padding:11px 10px;min-height:44px;font-size:12px}#page-editor .save-area>button{padding:9px 0;font-size:11px}
}
@media(max-width:650px){body[data-page="editor"] main{padding-bottom:85px}#page-editor[data-mobile-step="details"] .save-area{position:fixed;left:0;right:0;bottom:0;z-index:5;background:#fff;border-top:1px solid #dce7e1;box-shadow:0 -4px 18px #244d350b;margin:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));justify-content:space-between}#page-editor .details{padding-bottom:12px}body[data-page="editor"] nav{scrollbar-width:none}body[data-page="editor"] nav::-webkit-scrollbar{display:none}}
