:root{--green:#126853;--green-dark:#104d40;--green-soft:#e9f4ef;--ink:#1e302e;--muted:#7b8784;--line:#e8edeb;--paper:#fff;--bg:#f5f7f7;--red:#bd4845;--amber:#ac7626;--shadow:0 14px 50px #173a2910}*{box-sizing:border-box}body{margin:0;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:3px solid #6ab79b;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #dde5e1;border-radius:8px;background:#fff;color:var(--ink);padding:11px 12px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #12685312}input::placeholder,textarea::placeholder{color:#a2aaa7}select{cursor:pointer}label{display:block;color:#4a5d55;font-size:13px;line-height:1.7}label>input,label>select,label>textarea{margin-top:7px}label b{color:var(--green);font-weight:400}small,.small{font-size:12px}.muted{color:var(--muted)}.num{text-align:right!important;font-variant-numeric:tabular-nums}.btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:8px;background:#fff;border:1px solid #dfe6e2;color:#45584f;font-weight:500;white-space:nowrap;transition:background .15s,transform .15s}.btn:hover{background:#f3f7f4}.btn:active{transform:translateY(1px)}.btn.primary{color:#fff;background:var(--green);border-color:var(--green);box-shadow:0 3px 6px #12685312}.btn.primary:hover{background:var(--green-dark)}.btn.text{background:transparent;border-color:transparent;color:var(--green)}.btn.tiny{min-height:30px;font-size:12px;padding:5px 10px}.btn.full{width:100%}.brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:650;letter-spacing:1px}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:2px;margin-top:5px;color:#9ba9a3}.brand-mark{display:flex;align-items:center;justify-content:center;background:var(--green);border-radius:11px;color:#fff;font-size:23px;width:43px;height:43px;flex-shrink:0;font-weight:600;letter-spacing:0}.app-shell{display:grid;grid-template-columns:226px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:30px 18px 15px;display:flex;flex-direction:column}.sidebar .brand{padding:0 10px}.nav-caption{font-size:10px;letter-spacing:2px;color:#a1aaa5;margin:45px 14px 16px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;color:#66786e;border:0;border-radius:8px;background:transparent;padding:13px 15px;text-align:left;margin:4px 0;font-size:13px;min-height:45px}.nav-item>span:first-child{width:19px;font-size:21px;font-family:"Segoe UI Symbol",sans-serif;line-height:18px}.nav-item:hover{background:#f6f9f6}.nav-item.active{background:var(--green-soft);color:var(--green);font-weight:600}.nav-count{margin-left:auto;padding:1px 7px;background:#d6e9df;border-radius:5px;font-size:10px}.sidebar-note{border:1px solid #e6ede8;border-radius:10px;padding:16px 14px;background:linear-gradient(140deg,#f2f7f3,#fff);margin:40px 5px 18px}.sidebar-note .note-icon{color:var(--green);font-size:22px;display:block;margin-bottom:9px}.sidebar-note strong{font-size:12px;font-weight:600}.sidebar-note p{font-size:11px;line-height:1.9;color:#8b9891;margin-top:8px}.sidebar-bottom{margin-top:auto}.sidebar-bottom>.nav-item{font-size:12px}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:13px;padding:20px 8px 0}.avatar{width:36px;height:36px;border-radius:50%;background:#e4eee9;color:var(--green);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.profile strong{font-size:12px;display:block}.profile small{color:#96a198;font-size:10px;display:block;margin-top:4px}.profile button{margin-left:auto;background:transparent;border:0;color:#738378;font-size:24px}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{height:73px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:#ffffffc9}.breadcrumb{font-size:12px;color:#95a098}.breadcrumb span{margin:0 10px;color:#c3cbc7}.breadcrumb b{color:#52665a;font-weight:500}.topbar-right{display:flex;gap:22px;align-items:center}.sync-status{color:var(--green);font-size:11px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.sync-status i{height:6px;width:6px;border-radius:50%;background:#35956f;box-shadow:0 0 0 3px #35956f12}.sync-status.offline{color:var(--amber)}.sync-status.offline i{background:var(--amber)}.today{font-size:11px;color:#89978e}main{padding:36px 36px 30px;width:100%;max-width:1660px;margin:0 auto;flex:1}.page-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px;gap:15px}.eyebrow{font-size:9px;letter-spacing:2.4px;font-weight:600;color:#99a59e}.page-title h1{font-size:28px;letter-spacing:1px;font-weight:650;margin-top:8px}.page-title p:not(.eyebrow){font-size:12px;color:#8d9992;margin-top:12px}.page-actions{display:flex;gap:10px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:27px}.stat-card{border:1px solid var(--line);border-radius:11px;background:#fff;padding:20px 21px}.stat-card:last-child{background:#edf4ef;border-color:#deebe2}.stat-label{display:flex;justify-content:space-between;align-items:center;color:#819087;font-size:12px}.stat-icon{font-family:"Segoe UI Symbol",sans-serif;font-size:15px;color:#859b8d;background:#f5f7f5;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:7px}.stat-card:last-child .stat-icon{background:#dfeee4;color:var(--green)}.stat-value{font-size:28px;letter-spacing:-.8px;font-weight:600;margin-top:14px;font-variant-numeric:tabular-nums}.stat-value small{font-size:11px;color:#89958d;font-weight:400;margin-left:6px;letter-spacing:0}.stat-sub{font-size:10px;color:#95a096;margin-top:8px}.stat-sub b{font-weight:500;color:#687f6e}.stat-card:last-child .stat-value{color:var(--green)}.panel{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 3px 12px #273a2d02}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:24px 23px 20px;gap:12px}.panel-heading h2{display:flex;gap:10px;align-items:center;font-size:15px;font-weight:600}.panel-heading p{font-size:11px;color:#9aa69e;margin-top:8px;line-height:1.8}.pill{padding:2px 7px;line-height:1.5;border-radius:5px;background:#eff3f0;font-size:10px;color:#7c8e81}.filters{display:flex;gap:10px;padding:0 23px 21px}.filters>select{width:151px;font-size:12px;padding:9px 11px;min-width:0}.filters>.btn{font-size:12px;padding:9px 12px}.search-input{display:flex;align-items:center;gap:8px;flex:1;min-width:160px;border:1px solid #e2e8e4;border-radius:7px;padding-left:12px}.search-input span{font-size:22px;color:#83938a}.search-input input{border:0;background:transparent;font-size:12px;padding:10px 0 10px 4px;box-shadow:none}.date-filters{display:flex;align-items:center;gap:12px;padding:0 23px 20px;background:#fff}.date-filters label{font-size:11px;max-width:190px}.date-filters input{font-size:12px;padding:6px 9px}.date-filters>span{margin-top:20px;color:#9ba99f}.date-filters button{margin-top:20px;font-size:11px}.filter-error{padding:0 23px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th{font-weight:500;font-size:10px;letter-spacing:.3px;color:#8d9b92;background:#f8faf8;padding:14px 15px;text-align:left;border-top:1px solid #edf1ee;border-bottom:1px solid #edf1ee}td{padding:21px 15px;border-bottom:1px solid #f0f3f0;line-height:1.6;color:#55675a}th:first-child,td:first-child{padding-left:23px}th:last-child,td:last-child{padding-right:23px}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfdfb}td strong{font-size:11px;font-weight:500;color:#304c3a;display:block}td small{display:block;font-size:10px;color:#98a59a;margin-top:5px}td.num strong{font-size:13px;font-weight:550}td.num small{font-size:9px}.table-link{border:0;background:transparent;color:var(--green);font-size:11px;padding:5px 0}.table-link.danger{color:var(--red);margin-left:12px}.material-tag{background:#edf4f0;color:#356851;border-radius:5px;padding:3px 6px;display:inline-block;font-size:10px}.person{display:flex;align-items:center;gap:6px;font-size:11px}.person>i{font-style:normal;font-size:9px;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#f0f3ee;color:#7f9480}.balance-cell strong{color:var(--green)!important}.zero{color:#b1bbb2!important}.table-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:15px 23px;color:#96a399;font-size:10px}.pagination{display:flex;align-items:center;gap:14px}.pagination button{width:27px;height:27px;background:#fff;border:1px solid #e6ebe7;border-radius:5px;color:#6a7c6e}.footnote{display:flex;gap:7px;font-size:10px;color:#9ba69f;margin:18px 0;line-height:1.8}.footnote>span{font-size:12px}.workspace-footer{padding:18px 36px;border-top:1px solid #e9eeea;display:flex;justify-content:space-between;color:#a3aea5;font-size:10px}.section-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:23px}.section-toolbar p{font-size:12px;color:#8b9b8f;line-height:1.8}.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.material-card{background:#fff;border:1px solid var(--line);padding:23px;border-radius:11px;display:flex;flex-direction:column;gap:15px}.material-card.archived{opacity:.65}.material-card-top{display:flex;align-items:center;gap:10px}.material-symbol{display:flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:9px;background:#edf5ef;color:var(--green);font-size:20px}.material-card h3{font-size:15px}.material-card-top small{color:#94a197;font-size:11px;display:block;margin-top:5px}.material-rate{padding:16px 0 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.material-rate span{font-size:11px;color:#8d9b91}.material-rate b{font-size:23px;font-weight:550}.material-rate b small{font-size:11px;color:#94a295;font-weight:400;margin-left:5px}.material-card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#95a398}.audit-list{padding:0 24px}.audit-item{display:grid;grid-template-columns:35px 1fr 150px;gap:13px;padding:20px 0;border-top:1px solid var(--line)}.audit-icon{background:var(--green-soft);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--green)}.audit-item strong{font-size:12px;font-weight:500}.audit-item strong span{color:#8a998d;font-weight:400;margin-left:12px}.audit-item p{font-size:11px;color:#8d9e90;line-height:1.9;margin-top:7px;overflow-wrap:anywhere}.audit-item time{text-align:right;color:#9caaa0;font-size:10px;padding-top:5px}.role-tag{display:inline-block;padding:3px 8px;border-radius:5px;font-size:11px;background:#eef4ef;color:#477555}.role-tag.editor{background:#eef2f7;color:#5d7a9e}.role-tag.viewer{background:#f2f3f3;color:#808e85}.status-label{font-size:11px;color:#5d8b6c}.status-label.disabled{color:#999}.empty{text-align:center;padding:70px 20px}.empty>span{font-size:36px;color:#b5c9bc}.empty h3{font-size:16px;font-weight:500;margin-top:12px}.empty p{font-size:12px;color:#97a69b;margin:12px 0 22px;line-height:1.8}.record-cards{display:none}.demo-banner,.connection-banner{margin:0 0 23px;border:1px solid #decba1;background:#fffbef;color:#96723a;padding:10px 14px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:12px;line-height:1.8}.demo-banner button{border:0;background:transparent;color:#96723a;white-space:nowrap}.connection-banner{background:#fff7ee}.connection-banner:empty{display:none}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.auth-intro{background:#123e33;color:#fff;padding:50px 10%;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;position:relative;overflow:hidden}.auth-intro:after{content:"";position:absolute;width:550px;height:550px;right:-270px;bottom:-260px;border:1px solid #ffffff0c;border-radius:50%;box-shadow:0 0 0 85px #ffffff03,0 0 0 170px #ffffff03;pointer-events:none}.auth-intro .brand-mark{background:#e9f4ed;color:#164c3d}.auth-intro .brand small{color:#8fada0}.auth-intro .eyebrow{color:#9fbeae;font-size:12px;letter-spacing:1px;margin:60px 0 23px}.auth-intro h1{font-size:50px;line-height:1.6;letter-spacing:5px;font-weight:550}.auth-copy{color:#99b4a7;font-size:14px;line-height:2.2;margin-top:22px}.formula-card{background:#ffffff09;border:1px solid #ffffff15;border-radius:13px;padding:20px 25px;margin-top:35px;max-width:340px}.formula-card>span{font-size:11px;color:#9fbbac}.formula-card>div{display:flex;align-items:center;gap:19px;margin:18px 0}.formula-card strong{font-size:28px;font-weight:500}.formula-card small{font-size:11px;font-weight:400;margin-left:6px;color:#b8d1c0}.formula-card>div>span{color:#85aa94}.formula-card>b{font-size:34px;color:#cfebcf;font-weight:500;letter-spacing:1px}.auth-footer{color:#739984;font-size:11px;letter-spacing:2px;margin-top:40px}.auth-panel{display:flex;align-items:center;justify-content:center;background:#fcfdfb;padding:45px}.auth-form{width:100%;max-width:350px}.mini-tag{display:inline-block;font-size:10px;letter-spacing:2px;color:#83a08a;padding:5px 9px;border:1px solid #dce7dd;border-radius:5px;margin-bottom:20px}.auth-form h2{font-size:27px;font-weight:600;letter-spacing:1px}.auth-form>p{color:#92a094;font-size:12px;margin-top:14px;line-height:1.9}.auth-form form{margin-top:32px}.auth-form label{margin-bottom:20px;font-size:12px}.auth-form input{padding:13px}.auth-form .btn.primary{margin-top:8px;justify-content:space-between;padding:12px 17px}.auth-form>.btn{font-size:12px;margin-top:10px}.auth-form .auth-help{margin-top:30px;border-top:1px solid #e6ece5;padding-top:22px;font-size:11px;color:#a0aca1}.form-error{font-size:12px;line-height:1.8;color:var(--red);min-height:0}.form-error:not(:empty){margin:12px 0}.boot{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#f7faf7}.boot p{color:#819889;font-size:13px}.boot #boot-error{color:var(--red);max-width:80%;line-height:2}dialog{padding:0;border:1px solid #e3eae3;border-radius:15px;color:var(--ink);width:560px;max-width:calc(100% - 28px);max-height:calc(100dvh - 40px);box-shadow:0 25px 100px #112e2940}dialog::backdrop{background:#112e2966;backdrop-filter:blur(3px)}dialog form{display:flex;flex-direction:column;max-height:calc(100dvh - 44px)}.dialog-heading{padding:23px 25px 19px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.dialog-heading h2{font-size:19px;font-weight:600}.dialog-heading .eyebrow{display:block;margin-bottom:9px;font-size:8px}.icon-btn{width:30px;height:30px;flex-shrink:0;background:#f4f7f4;color:#8da094;font-size:23px;border:0;border-radius:7px}.dialog-body{padding:22px 25px;overflow-y:auto}.dialog-body>label{margin-bottom:17px}.dialog-hint{font-size:11px;color:#94a49a;margin:0 0 18px;line-height:1.9;overflow-wrap:anywhere}.dialog-footer{padding:17px 25px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);background:#fbfdfb}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-bottom:18px}.span-2{grid-column:span 2}.quantity-block{border:1px solid #deebe2;border-radius:10px;padding:17px;background:#f5faf6;margin:3px 0 20px}.quantity-block .form-grid{grid-template-columns:1.1fr 1fr;margin-bottom:15px;align-items:end}.quantity-block input{font-size:19px;font-weight:500;padding:10px}.conversion{padding:0 0 8px 12px}.conversion>span{font-size:11px;color:#8c9e90;display:block;margin-bottom:13px}.conversion strong{font-size:16px;font-weight:500;color:#57765f}.conversion-result{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px dashed #d7e5da;color:#699175;font-size:11px}.conversion-result strong{font-size:25px;font-weight:550;color:var(--green);font-variant-numeric:tabular-nums}.conversion-result small{font-size:11px;color:#6f957a;font-weight:400}.balance-preview{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0 20px;border-bottom:1px solid var(--line);margin-bottom:20px;color:#62846c;font-size:12px}.balance-preview small{display:block;font-size:10px;color:#99aa9e;margin-top:4px}.balance-preview strong{font-size:13px;font-weight:500}.checkbox-label{display:flex;gap:8px;align-items:center;font-size:12px}.checkbox-label input{width:15px;height:15px;margin:0;accent-color:var(--green)}.conflict-box{padding:13px;background:#fff7ea;border:1px solid #eddcc0;border-radius:8px;font-size:12px;color:#966e36;line-height:1.8}.conflict-box .btn{font-size:11px;margin-top:10px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#203e31;color:#fff;padding:13px 24px;box-shadow:var(--shadow);border-radius:9px;font-size:12px;z-index:100;max-width:90vw;line-height:1.8}.toast.error{background:#8c413d}
@media(min-width:1550px){td{padding-top:24px;padding-bottom:24px}.stat-card{padding:24px}.stat-value{font-size:33px}.sidebar{padding-top:35px}.app-shell{grid-template-columns:245px minmax(0,1fr)}}
@media(max-width:1200px){.app-shell{grid-template-columns:195px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.sidebar .brand{font-size:16px}.sidebar .brand-mark{width:36px;height:36px;font-size:21px}.sidebar .brand small{font-size:9px;letter-spacing:1px}main{padding:27px 24px}.topbar{padding:0 24px}.stats{gap:12px}.stat-card{padding:16px}.stat-value{font-size:25px}.topbar-right{gap:15px}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{flex-wrap:wrap}.search-input{flex-basis:40%}.filters>select{width:calc(25% - 10px)}.filters>.btn{margin-left:auto}}
@media(max-width:850px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;width:100%;height:auto;padding:17px 20px 0;border-right:0;border-bottom:1px solid var(--line);display:block}.sidebar .brand{padding:0;font-size:17px}.sidebar .brand small{font-size:9px}.sidebar .brand-mark{height:35px;width:35px;font-size:20px;border-radius:9px}.sidebar .nav-caption,.sidebar-note,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;margin-top:16px;gap:5px;padding-bottom:8px;scrollbar-width:none}.nav-item{width:auto;flex-shrink:0;padding:9px 12px;margin:0;font-size:12px;min-height:35px;gap:6px}.nav-item>span:first-child{font-size:16px;width:16px}.nav-count{font-size:9px;padding:1px 5px}.topbar{height:49px;padding:0 24px}.topbar-right{gap:13px}.today{display:none}.breadcrumb{font-size:10px}.sync-status{font-size:10px}main{padding-top:28px}.page-title h1{font-size:25px}.stats{gap:11px}.stat-card{padding:17px 15px}.stat-label{font-size:11px}.stat-icon{display:none}.stat-value{font-size:25px;margin-top:16px}.stat-sub{font-size:9px}.filters>select{width:150px}.filters{flex-wrap:wrap}.search-input{flex-basis:100%}.filters>select{flex:1;width:0}.filters>.btn{font-size:11px}.auth-intro{padding:35px 9%}.auth-intro h1{font-size:38px}.formula-card{padding:17px}.formula-card>div{gap:13px}.formula-card strong{font-size:23px}.formula-card small{font-size:9px}.auth-panel{padding:35px}.auth-form{max-width:320px}.audit-item{grid-template-columns:32px 1fr}.audit-item time{grid-column:2;text-align:left;margin-top:-8px}.panel-heading{padding:22px}.record-table{font-size:11px}}
@media(max-width:600px){.sidebar{padding:15px 17px 0}.sidebar nav{margin-top:13px}.sidebar .brand{font-size:17px}.topbar{padding:0 18px}.topbar-right{gap:10px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 6px}main{padding:25px 16px 25px}.page-title{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:21px}.page-title h1{font-size:25px}.page-title .eyebrow{font-size:8px}.page-title p:not(.eyebrow){font-size:11px;margin-top:9px}.page-actions{width:100%;justify-content:space-between}.page-actions .btn{font-size:12px;min-height:38px}.stats{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:20px}.stat-card{padding:17px}.stat-value{font-size:28px;margin-top:12px}.stat-sub{font-size:10px}.stat-label{font-size:11px}.stat-icon{display:flex;width:23px;height:23px;font-size:12px}.records-panel>.table-scroll{display:none}.record-cards{display:block}.record-card{padding:20px 17px;border-top:1px solid var(--line)}.record-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.record-card-top strong{font-size:13px;font-weight:550}.record-card-top span{font-size:10px;color:#9aa89d}.record-card-sub{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:11px;gap:6px}.record-card-sub small{color:#8ca192}.record-card-q{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:17px;padding-top:16px;border-top:1px dashed #e7ede7}.record-card-q>div{text-align:center}.record-card-q span{display:block;color:#92a196;font-size:10px;margin-bottom:8px}.record-card-q strong{display:block;font-size:16px;font-weight:550;font-variant-numeric:tabular-nums}.record-card-q small{display:block;font-size:9px;color:#99ab9d;margin-top:5px}.record-card-q>div:last-child strong{color:var(--green)}.record-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px;font-size:10px;color:#9caaa0}.panel-heading{padding:20px 17px 17px}.panel-heading h2{font-size:14px}.panel-heading p{font-size:10px}.panel-heading>#last-sync{display:none}.filters{padding:0 17px 17px;gap:8px}.filters>select{font-size:11px;padding:9px 6px}.filters>.btn{padding:9px 8px;font-size:10px}.search-input{min-width:100%}.search-input input{font-size:11px}.date-filters{padding:0 17px 17px;flex-wrap:wrap;gap:8px}.date-filters label{max-width:calc(50% - 20px)}.date-filters button{margin-top:0;padding-left:0}.date-filters>span{font-size:10px}.table-footer{padding:14px 17px}.footnote{font-size:9px;line-height:1.9;margin-top:14px}.workspace-footer{padding:17px;font-size:8px}.section-toolbar{align-items:flex-start;flex-direction:column}.section-toolbar p{font-size:11px}.material-grid{grid-template-columns:1fr;gap:13px}.material-card{padding:20px}.material-rate{padding:15px 0}.audit-list{padding:0 17px}.audit-item{gap:10px}.audit-item p{font-size:10px}.audit-item strong{font-size:11px}.audit-item strong span{font-size:10px}.auth-shell{display:block}.auth-intro{min-height:auto;padding:26px 28px 29px}.auth-intro>.brand{font-size:18px}.auth-intro .brand-mark{width:37px;height:37px;font-size:21px}.auth-intro .eyebrow{margin:28px 0 13px;font-size:10px}.auth-intro h1{font-size:31px;line-height:1.5;letter-spacing:2px}.auth-intro h1 br{display:none}.auth-copy{font-size:11px;margin-top:12px;line-height:1.9}.auth-copy br{display:none}.formula-card,.auth-footer{display:none}.auth-panel{padding:32px 28px 50px;min-height:440px}.auth-form{max-width:420px}.mini-tag{font-size:9px;padding:3px 8px;margin-bottom:13px}.auth-form h2{font-size:23px}.auth-form>p{font-size:11px;margin-top:10px}.auth-form form{margin-top:25px}.auth-form label{font-size:11px;margin-bottom:17px}.auth-form .auth-help{margin-top:20px}.auth-form input{padding:12px}.demo-banner,.connection-banner{font-size:10px;padding:10px 12px;gap:9px}.demo-banner button{font-size:10px}.empty{padding:45px 20px}.empty p{font-size:11px}dialog{max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:12px}dialog form{max-height:calc(100dvh - 24px)}.dialog-heading{padding:20px}.dialog-heading h2{font-size:18px}.dialog-body{padding:20px}.dialog-footer{padding:14px 20px}.form-grid{gap:13px}.form-grid label{font-size:12px}.form-grid input{font-size:13px;padding:10px}.form-grid select{font-size:12px}.quantity-block .form-grid input{font-size:20px}.conversion{padding-left:0}.conversion strong{font-size:14px}.conversion>span{font-size:10px}.conversion-result strong{font-size:23px}.balance-preview{font-size:11px}.balance-preview strong{font-size:12px}.toast{bottom:20px;font-size:11px;padding:12px 18px;width:max-content;max-width:90%}input,select,textarea{font-size:16px!important}.dialog-hint{font-size:10px}}
.inline-unit{display:inline!important;margin-left:4px;font-weight:400}.btn.danger{color:var(--red);border-color:#efd8d4;margin-right:auto}.mobile-account{display:none}.quantity-block label.conversion{padding:0}.rate-help{font-size:10px;color:#8c9e90;line-height:1.8;margin:0 0 12px}@media(max-width:850px){.mobile-account{display:inline-flex}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.monthly-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px}.monthly-pickers{display:flex;align-items:end;gap:12px}.monthly-pickers label{width:190px;font-size:11px}.monthly-pickers input,.monthly-pickers select{height:43px;font-size:12px}.monthly-exports{display:flex;gap:10px;padding-bottom:1px}.monthly-note{margin-top:18px;padding:13px 16px;border-radius:8px;border:1px solid #e1ece3;background:#eff6f0;color:#789080;font-size:11px;line-height:1.9}#summary-view .mini-tag{margin-bottom:0;white-space:nowrap}#summary-view table{min-width:740px}@media(max-width:700px){.monthly-toolbar{align-items:stretch;flex-direction:column}.monthly-pickers label{width:auto;flex:1;min-width:0}.monthly-pickers{gap:10px}.monthly-exports{justify-content:flex-end}.monthly-exports .btn{font-size:12px}.monthly-note{font-size:10px}.monthly-pickers input,.monthly-pickers select{font-size:14px}#summary-heading{font-size:13px;line-height:1.8}#summary-count{font-size:10px}}

.workspace-switch{display:inline-flex;align-items:center;text-decoration:none;padding:9px 11px;border-radius:7px;border:1px solid #dce8de;color:#176b58;background:white;font-size:13px;white-space:nowrap}.auth-form>.workspace-switch{margin-bottom:18px}@media(max-width:700px){.topbar{gap:8px;flex-wrap:wrap;height:auto;min-height:64px;padding-top:8px;padding-bottom:8px}.topbar>.breadcrumb{display:none}}

/* Direct material entry; mobile keeps each material and its inputs together. */
#record-dialog{max-width:900px;width:calc(100% - 32px)}.issue-materials{margin:22px 0}.issue-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.issue-heading h3{font-size:15px}.issue-heading span{font-size:12px;color:var(--muted)}.issue-material-row{display:grid;grid-template-columns:minmax(130px,1.2fr) minmax(110px,1fr) minmax(105px,1fr) minmax(100px,.9fr);gap:14px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:10px;margin-bottom:10px;background:#fbfcfb}.issue-material-row.has-quantity{border-color:#8dbda6;background:#f0f8f3}.issue-material-name b{display:block;font-size:15px}.issue-material-name small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.issue-material-row label{font-size:12px;margin:0}.issue-material-row input{margin-top:6px;padding:10px;font-size:16px;min-height:42px}.issue-pieces{text-align:right}.issue-pieces span{font-size:12px;color:var(--muted)}.issue-pieces strong{display:block;font-size:16px;color:var(--green);margin-top:7px}.issue-total{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:15px 4px;color:var(--green)}.issue-total span{font-size:13px}.issue-total strong{font-size:15px}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.record-card-q{grid-template-columns:1fr}.record-table{min-width:850px}#summary-view table{min-width:520px}
@media(max-width:600px){#record-dialog{width:calc(100% - 16px);max-height:94dvh}.issue-material-row{grid-template-columns:1fr 1fr;gap:11px;padding:13px}.issue-material-name{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:10px}.issue-material-name small{margin:0}.issue-pieces{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.issue-pieces strong{margin:0}.issue-total{align-items:flex-start;flex-direction:column;gap:5px}.stats{grid-template-columns:1fr 1fr}.stats>.stat-card:last-child{grid-column:1/-1}.stat-value{font-size:25px}}
