:root{--ink:#102f3d;--text-muted:#526c79;--teal:#147c83;--line:#d6e2e9;--wash:#f2f6fa;--pale:#edf5f7}.production-app,.production-login{color:var(--ink);font-family:Arial,Microsoft YaHei,sans-serif}.production-app{background:var(--wash);min-height:100vh;display:flex}.production-sidebar{color:#eaf5f7;z-index:30;background:#143442;flex-direction:column;width:250px;display:flex;position:fixed;inset:0 auto 0 0}.production-brand{align-items:center;height:126px;padding:18px 20px;display:flex}.production-brand img{width:185px;height:auto;display:block}.navitem{color:#e7f2f4;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;margin:2px 9px;padding:13px 15px;display:flex}.navitem svg{width:17px}.navitem:hover,.navitem.active{color:#fff;background:#294f5d}.production-sidebar footer{border-top:1px solid #365563;margin-top:auto;padding:13px 12px}.account{align-items:center;gap:12px;padding:8px;display:flex}.account svg{width:22px}.account small{color:#9eb7c1;margin-top:3px;display:block}.logout{color:#aec2ca;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:8px;display:flex}.logout svg{width:16px}.nav-close{display:none}.production-workspace{flex:1;min-width:0;margin-left:250px}.production-topbar{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:12px;height:70px;padding:0 36px;display:flex}.production-topbar button{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0}.production-topbar b{color:#9ab0bb;margin:0 9px;font-weight:400}.topbar-spacer{flex:1}.cloud-status{color:#24734c;background:#eef7f2;border-radius:6px;padding:8px 12px;font-size:13px}.nav-trigger{display:none!important}.preview-switch{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.preview-switch select{min-width:150px;border:1px solid var(--line)!important;width:auto!important;color:var(--ink)!important;background:#fff!important;border-radius:7px!important;margin:0!important;padding:8px 30px 8px 10px!important}.preview-banner{color:#6f5315;background:#fff8e8;border:1px solid #d4b56d;border-radius:10px;align-items:center;gap:14px;margin-bottom:20px;padding:12px 16px;display:flex}.preview-banner span{flex:1;font-size:13px}.preview-banner button{color:#6f5315;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d4b56d;border-radius:7px;padding:7px 12px}.production-content{max-width:1510px;margin:auto;padding:36px}.page-heading,.project-heading{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.page-heading span,.project-heading span{letter-spacing:2px;color:#517384;font-size:13px}.page-heading h1,.project-heading h1{letter-spacing:-.8px;margin:5px 0 10px;font-size:29px;font-weight:700}.page-heading p,.project-heading p{color:var(--text-muted);margin:0}.create-button,.production-primary{border:1px solid var(--teal);background:var(--teal);color:#fff;font:inherit;cursor:pointer;border-radius:8px;padding:12px 20px}.back-button{border:1px solid var(--line);color:var(--teal);cursor:pointer;background:#fff;border-radius:8px;padding:11px 16px}.project-grid{grid-template-columns:repeat(3,minmax(230px,1fr));gap:18px;display:grid}.project-card{border:1px solid var(--line);text-align:left;min-height:170px;color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;padding:24px;box-shadow:0 2px 6px #14344208}.project-card:hover{border-color:#9bbec5;transform:translateY(-1px)}.project-card span{color:var(--text-muted);letter-spacing:1px;font-size:13px}.project-card h2{margin:17px 0 42px;font-size:22px}.project-card div{color:var(--teal)}.empty-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:28px}.workspace-card{background:0 0;border:0;padding:0}.empty-card{text-align:center;padding:70px 30px}.empty-card>svg{color:#8aa4af;width:35px;height:35px}.empty-card h2{margin:18px 0 8px}.empty-card p{color:var(--text-muted)}.workspace-card>section>h2{display:none}.workspace-card details{border:1px solid var(--line);border-radius:10px;margin-bottom:12px;padding:0 18px}.workspace-card summary{cursor:pointer;padding:17px 0;font-weight:700}.workspace-card label,.modal label,.production-login label{margin:16px 0;font-size:14px;display:block}.workspace-card input,.workspace-card select,.modal input,.production-login input{box-sizing:border-box;width:100%;color:inherit;font:inherit;background:#fff;border:1px solid #becfd8;border-radius:7px;margin-top:7px;padding:11px 12px}:is(.workspace-card:not(:has(.owner-home)) button,.production-login button){color:var(--teal);font:inherit;cursor:pointer;background:#fff;border:1px solid #b9ccd5;border-radius:7px;padding:10px 15px}.workspace-card form>button{background:var(--teal);color:#fff;border-color:var(--teal)}.production-formgrid{grid-template-columns:repeat(2,1fr);gap:0 18px;display:grid}.production-projects{padding:0;list-style:none}.production-projects li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 0;display:flex}.production-tablewrap{margin:18px 0;overflow-x:auto}.production-tablewrap table{border-collapse:collapse;width:100%;font-size:14px}.production-tablewrap th,.production-tablewrap td{text-align:left;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:top;padding:12px}.production-tablewrap th{background:var(--pale)}.production-tablewrap th:last-child,.production-tablewrap td:last-child{border-right:0}.production-totals{grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0;display:grid}.production-totals>div{background:var(--pale);border-radius:8px;padding:16px;font-size:14px}.production-totals strong{margin-top:10px;font-size:20px;display:block}.production-photos{flex-wrap:wrap;gap:12px;display:flex}.production-photos>div{position:relative}.production-photos img{object-fit:contain;border:1px solid var(--line);border-radius:6px;width:90px;height:80px}.production-photos>div>button{padding:2px 7px;position:absolute;top:-8px;right:-8px}.production-receipts{margin:28px 0}.production-ledger{border-top:2px solid var(--line);margin-top:28px;padding-top:20px}.notice{color:#fff;background:#173d49;border-radius:8px;padding:12px 18px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 30px #0003}.modal-backdrop{z-index:50;background:#102f3d66;place-items:center;display:grid;position:fixed;inset:0}.modal{box-sizing:border-box;background:#fff;border-radius:14px;width:min(460px,100vw - 32px);padding:28px;position:relative}.modal h2{margin:0 0 8px}.modal p{color:var(--text-muted)}.modal-close{cursor:pointer;background:0 0;border:0;position:absolute;top:17px;right:17px}.modal-close svg{width:20px}.modal .production-primary{width:100%;margin-top:8px}.production-login{background:linear-gradient(135deg,#102f3d,#1e5661);place-items:center;min-height:100vh;display:grid}.production-login>section{box-sizing:border-box;background:#fff;border-radius:16px;width:min(420px,100vw - 32px);padding:34px}.production-login img{background:#143442;border-radius:10px;width:180px;margin-bottom:25px;padding:13px;display:block}.production-login h1{margin:0 0 6px}.production-login .production-primary{color:#fff;background:var(--teal);width:100%}.production-code{align-items:end;gap:10px;display:flex}.production-code input{min-width:0}.login-divider{color:var(--text-muted);align-items:center;gap:12px;margin:20px 0 0;font-size:13px;display:flex}.wechat-login-button{color:#12804a;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #24b05e;border-radius:8px;justify-content:center;align-items:center;gap:9px;margin-top:14px;padding:12px 20px;font-weight:600;display:flex}.wechat-login-button:hover{background:#f2fbf6}.wechat-login-button:disabled{opacity:.7;cursor:default}.wechat-qr-panel{justify-content:center;margin-top:14px;display:flex}.wechat-qr-panel iframe{background:#fff;border:0;border-radius:12px;width:300px;height:400px}.login-hint{color:var(--text-muted);text-align:center;margin:12px 0 0;font-size:12px;line-height:1.6}.login-mode-title{margin:0 0 4px}.login-switch{width:100%;color:var(--teal);font:inherit;cursor:pointer;text-align:center;background:0 0;border:0;margin-top:14px;padding:10px 0;font-size:14px;display:block}.login-switch:hover{text-decoration:underline}.settings-page .row-actions{align-items:center;gap:12px;display:flex}.settings-page .row-actions .muted{margin:0}.password-card{margin-top:18px}.password-form{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:14px;display:grid}.password-form label{color:var(--text-muted);flex-direction:column;gap:7px;font-size:13px;display:flex}.password-form .production-primary{justify-self:start}.password-form .settings-notice{color:#1c8a5a;margin:0;font-size:13px}.password-form .member-save-error{margin:0}.production-code button{white-space:nowrap}.production-primary:disabled,button:disabled{opacity:.7;cursor:default}.workspace-card:has(.owner-home){background:0 0;border:0;padding:0}.workspace-card .owner-home>.panel,.workspace-card .owner-finances{margin-bottom:18px}@media (width<=900px){.production-sidebar{transition:all .2s;transform:translate(-100%)}.production-sidebar.open{transform:none}.nav-close{color:#fff;background:0 0;border:0;display:block;position:absolute;top:8px;right:8px}.production-workspace{margin-left:0}.nav-trigger{display:block!important}.production-topbar{padding:0 18px}.production-content{padding:26px 18px}.project-grid,.production-totals{grid-template-columns:1fr 1fr}}@media (width<=600px){.cloud-status,.preview-switch span{display:none}.preview-switch select{min-width:132px!important}.preview-banner{flex-wrap:wrap;align-items:flex-start}.preview-banner span{flex-basis:100%}.page-heading,.project-heading{align-items:flex-start;gap:16px}.page-heading h1,.project-heading h1{font-size:26px}.project-grid,.production-formgrid{grid-template-columns:1fr}.production-content{padding:22px 12px}.workspace-card{padding:0}.production-brand{height:104px}}.capacity-page{gap:22px;display:grid}.capacity-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.capacity-summary>div,.capacity-card,.capacity-notes>div{border:1px solid var(--line);background:#fff;border-radius:12px;padding:20px}.capacity-summary span,.capacity-summary small{color:var(--text-muted);font-size:13px;display:block}.capacity-summary strong{margin:12px 0 5px;font-size:20px;display:block}.capacity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.capacity-head,.capacity-values{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.capacity-head span{font-weight:700;display:block}.capacity-head small{color:var(--text-muted);margin-top:6px;display:block}.capacity-head strong{color:var(--teal);font-size:22px}.capacity-track{background:#e8f0f3;border-radius:8px;height:13px;margin:22px 0 13px;overflow:hidden}.capacity-track i{background:#16898f;border-radius:8px;height:100%;display:block}.capacity-track.warning i{background:#d19b2b}.capacity-track.critical i{background:#c75349}.capacity-values{color:var(--text-muted);font-size:13px}.capacity-values b{color:var(--ink);font-weight:600}.capacity-notes{grid-template-columns:1fr 1fr;gap:16px;display:grid}.capacity-notes h2{font-size:15px}.capacity-notes strong{margin:14px 0;font-size:22px;display:block}.capacity-notes p,.capacity-update{color:var(--text-muted);margin:0;font-size:13px;line-height:1.7}.capacity-update{background:#f8fbfc;border:1px dashed #c8d8df;border-radius:10px;padding:15px 18px}@media (width<=900px){.capacity-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.capacity-grid,.capacity-notes,.capacity-summary{grid-template-columns:1fr}.capacity-values{flex-direction:column;gap:5px}}.owner-link-grid{grid-template-columns:230px minmax(0,1fr);gap:24px;padding:8px 0 20px;display:grid}.owner-qr-card{text-align:center;border:1px solid var(--line);background:#f8fbfc;border-radius:10px;flex-direction:column;align-items:center;padding:14px;display:flex}.owner-qr-card img{width:190px;height:190px}.owner-qr-card strong{color:var(--teal);margin-top:10px}.owner-qr-card small{color:var(--text-muted);margin-top:5px;line-height:1.5}.owner-password-row{align-items:end;gap:10px;display:flex}.owner-password-row label{flex:1}.owner-password-row>button{white-space:nowrap;margin-bottom:16px}.owner-link-actions{flex-wrap:wrap;gap:8px;display:flex}.owner-access-log{border-top:1px solid var(--line);margin-top:8px;padding-top:12px}.owner-access-log h3{font-size:15px}.owner-access-log td:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden}.owner-guest-shell{box-sizing:border-box;min-height:100vh;color:var(--ink);background:linear-gradient(135deg,#102f3d,#1e5661);place-items:center;padding:18px;font-family:Arial,Microsoft YaHei,sans-serif;display:grid}.owner-guest-login{box-sizing:border-box;background:#fff;border-radius:16px;width:min(420px,100%);padding:34px;box-shadow:0 18px 70px #0005}.owner-guest-login .production-metal-logo{margin-bottom:24px;display:block}.owner-guest-login .production-metal-logo img{width:180px;height:auto}.owner-guest-login h1{font-size:24px}.owner-guest-login .production-primary{background:var(--teal);border-color:var(--teal);color:#fff;border-radius:8px;padding:12px 20px}.owner-guest-login>svg{width:32px;height:32px;color:var(--teal)}.owner-guest-login h1{margin:13px 0 5px}.owner-guest-login p{color:var(--text-muted);line-height:1.6}.owner-guest-login label{margin:22px 0 14px;display:block}.owner-guest-login input{box-sizing:border-box;width:100%;font:inherit;border:1px solid #b8cdd6;border-radius:8px;margin-top:7px;padding:12px}.owner-guest-login button{width:100%}.owner-guest-login>small{color:var(--text-muted);align-items:center;gap:7px;margin-top:20px;display:flex}.owner-guest-login>small svg{width:16px}.owner-guest-page{background:var(--wash);min-height:100vh;color:var(--ink);font-family:Arial,Microsoft YaHei,sans-serif}.owner-guest-page>header{color:#fff;background:#143442;align-items:center;gap:22px;padding:18px max(20px,50vw - 620px);display:flex}.owner-guest-page>header img{width:145px}.owner-guest-page>header div{border-left:1px solid #fff4;flex:1;padding-left:22px}.owner-guest-page>header span{letter-spacing:2px;color:#a9c4ce;font-size:12px}.owner-guest-page>header h1{margin:5px 0;font-size:23px}.owner-guest-page>header p{color:#bfd0d6;margin:0;font-size:13px}.owner-guest-page>header button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff5;border-radius:7px;align-items:center;gap:7px;padding:9px 13px;display:flex}.owner-guest-page>header button svg{width:16px}.owner-guest-page>main{max-width:1240px;margin:auto;padding:28px 20px 60px}.owner-readonly-note{color:#4a6d70;background:#eef8f5;border:1px solid #bddbd5;border-radius:9px;align-items:center;gap:8px;margin-bottom:18px;padding:11px 14px;font-size:13px;display:flex}.owner-readonly-note svg{color:#147c83;width:17px}.owner-readonly-note span{color:#147c83;font-weight:700}.owner-public-list{margin-top:18px}.owner-public-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,1fr) auto;gap:6px 18px;padding:14px 0;display:grid}.owner-public-list article span{color:var(--text-muted);font-size:13px}.owner-public-list article p{color:#425f6c;grid-column:1/-1;margin:0;line-height:1.6}.owner-guest-page>.owner-mobile-header{display:none}.owner-guest-main,.owner-guest-workspace-card{min-width:0}.owner-guest-sidebar .navitem{width:calc(100% - 18px)}.owner-guest-topbar span:first-child{font-size:14px}.owner-guest-project-heading .badge{letter-spacing:0;color:#16816b}.owner-guest-project-heading p{font-size:14px}@media (width<=900px){.owner-guest-page{display:block}.owner-guest-page>.owner-mobile-header{display:flex}.owner-guest-sidebar,.owner-guest-topbar,.owner-guest-project-heading{display:none}.owner-guest-workspace{margin-left:0}.owner-guest-content{max-width:none;padding:0}.owner-guest-workspace-card{padding:0}.owner-guest-main{padding:18px 10px 40px}}@media (width<=700px){.owner-link-grid{grid-template-columns:1fr}.owner-password-row{flex-direction:column;align-items:stretch}.owner-password-row>button{margin:0 0 16px}.owner-guest-page>header{flex-wrap:wrap;align-items:flex-start;gap:12px}.owner-guest-page>header img{width:115px}.owner-guest-page>header div{border-top:1px solid #fff4;border-left:0;flex-basis:100%;order:3;padding-top:13px;padding-left:0}.owner-guest-page>header button{margin-left:auto}.owner-readonly-note{flex-wrap:wrap;align-items:flex-start}.owner-public-list article{grid-template-columns:1fr}}.owner-guest-back{border:1px solid var(--line);color:var(--teal);font:inherit;cursor:pointer;touch-action:manipulation;background:#fff;border-radius:7px;align-items:center;gap:7px;margin-bottom:14px;padding:10px 13px;font-weight:700;display:flex}.owner-guest-back svg{width:17px}.owner-public-item{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;grid-template-columns:minmax(180px,1fr) auto;gap:6px 18px;padding:14px 0;display:grid}.owner-public-item span{color:var(--text-muted);font-size:13px}.owner-public-item p{color:#425f6c;grid-column:1/-1;margin:0;line-height:1.6}.owner-guest-detail-head{margin-bottom:18px}.owner-guest-detail-head>p{color:var(--text-muted)}.owner-node-detail{background:#eef4f6;border-radius:8px;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;margin-top:16px;padding:14px;display:grid}.owner-node-detail span{color:#496675}.owner-guest-detail{margin-top:0}@media (width<=700px){.owner-public-item,.owner-node-detail{grid-template-columns:1fr}.owner-guest-page .owner-home .panel{padding:18px 14px}.owner-guest-page .owner-gantt{overflow-x:auto}.owner-guest-page .owner-gantt-head,.owner-guest-page .owner-gantt-row{min-width:520px}.owner-guest-page button,.owner-guest-page [role=tab]{touch-action:manipulation}}.owner-labor-page>.row{align-items:flex-start}.owner-labor-page>.row p{margin:6px 0 0}.owner-labor-page>.row select{border:1px solid var(--line);min-width:150px;font:inherit;color:var(--ink);background:#fff;border-radius:8px;padding:10px 12px}.owner-labor-settlement{background:#f1f6f8;border-radius:9px;margin-top:18px;padding:14px 16px}.owner-labor-settlement span{font-weight:700}.owner-labor-settlement p{color:var(--text-muted);margin:6px 0 0}@media (width<=700px){.owner-labor-page>.row{display:grid}.owner-labor-page>.row select{width:100%;margin-top:12px}}.owner-labor-evidence{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.owner-labor-evidence h3{margin:0 0 14px}.owner-labor-evidence-grid{flex-wrap:wrap;gap:14px;display:flex}.owner-labor-evidence-grid>button{color:var(--ink);text-align:left;font:inherit;cursor:zoom-in;background:0 0;border:0;align-content:start;gap:7px;padding:0;font-size:13px;display:grid}.owner-labor-evidence-grid img{object-fit:cover;border:1px solid var(--line);background:#f4f7f8;border-radius:8px;width:220px;height:150px;display:block}.owner-labor-evidence-grid .owner-evidence-pdf{border:1px solid var(--line);background:#f4f7f8;border-radius:8px;place-items:center;width:220px;min-height:150px}.owner-labor-evidence-grid .owner-evidence-pdf svg{width:34px;height:34px;color:var(--teal)}@media (width<=700px){.owner-labor-evidence-grid>button,.owner-labor-evidence-grid img,.owner-labor-evidence-grid .owner-evidence-pdf{width:100%}.owner-labor-evidence-grid img{height:auto;max-height:320px}}[data-slot=dialog-overlay]{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:190!important;background:#0f232c61!important;position:fixed!important;inset:0!important}[data-slot=dialog-content].appdialog{z-index:200!important;box-sizing:border-box!important;color:#102f3d!important;background:#fff!important;border:1px solid #d3dfe5!important;border-radius:14px!important;width:min(620px,100vw - 32px)!important;max-width:min(620px,100vw - 32px)!important;max-height:min(88vh,900px)!important;margin:0!important;padding:28px!important;display:grid!important;position:fixed!important;inset:50% auto auto 50%!important;overflow-y:auto!important;transform:translate(-50%,-50%)!important;box-shadow:0 24px 70px #0a1e2847!important}[data-slot=dialog-content].appdialog>[data-slot=dialog-close]{z-index:2;position:absolute!important;top:14px!important;right:14px!important}.management-income{margin:18px 0 22px}.management-income-list{gap:8px;display:grid}.management-income-list>div{border-top:1px solid var(--line);grid-template-columns:minmax(190px,1fr) auto;gap:5px 18px;padding:12px 0;display:grid}.management-income-list small{color:var(--text-muted);grid-column:1/-1}@media (width<=640px){.management-income-list>div{grid-template-columns:1fr}.management-income-list small{grid-column:auto}}.settings-page,.project-settings{gap:18px;display:grid}.settings-heading{margin-bottom:0}.settings-heading p,.project-settings-help,.settings-card-head p,.settings-section-title p{color:var(--text-muted);margin:5px 0 0;line-height:1.6}.project-settings-help{margin:0}.settings-tabs{border:1px solid var(--line);background:#e7eff3;border-radius:11px;gap:6px;padding:6px;display:flex;overflow-x:auto}.settings-tabs button{white-space:nowrap;align-items:center;gap:8px;display:flex;color:var(--ink)!important;background:0 0!important;border:1px solid #0000!important}.settings-tabs button svg{width:17px}.settings-tabs button.active{box-shadow:0 1px 4px #173d4914;color:var(--teal)!important;background:#fff!important;border-color:#b9d0d8!important}.settings-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:22px}.settings-card-head,.settings-section-title{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.settings-card-head h2,.settings-section-title h3{margin:0;font-size:18px}.settings-card-head>span{background:var(--pale);color:var(--teal);border-radius:20px;padding:7px 10px;font-size:13px}.settings-section-title{border-bottom:1px solid #e5edf1;justify-content:flex-start;padding-bottom:15px}.settings-section-title>svg{width:22px;color:var(--teal);flex:none}.table-sub{color:var(--text-muted);margin-top:5px;display:block}.status-pill{color:#24734c;background:#eaf6ef;border-radius:20px;padding:5px 9px;font-size:12px;display:inline-block}.status-pill.off{color:#6f7e85;background:#f2f2f2}.project-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.project-access-grid article{border:1px solid var(--line);border-radius:10px;padding:18px}.project-access-grid h3{margin:5px 0 14px}.project-access-grid small{color:var(--text-muted)}.project-access-people{flex-wrap:wrap;gap:7px;min-height:38px;display:flex}.project-access-people span{background:var(--pale);border-radius:18px;align-items:center;gap:4px;padding:6px 9px;font-size:12px;display:flex}.project-access-people svg{width:13px}.project-access-grid article>button{margin-top:16px}.settings-modal{width:min(680px,100vw - 32px);max-height:88vh;overflow:auto}.permission-list,.project-checks{border:1px solid var(--line);border-radius:9px;margin:18px 0;padding:10px 14px 14px}.permission-list legend,.project-checks legend{padding:0 7px;font-weight:700}.permission-list label,.project-checks label{background:#f7fafb;border-radius:7px;align-items:flex-start;gap:10px;margin:7px 0;padding:10px;display:flex}.permission-list input,.project-checks input,.enabled-check input{width:auto!important;margin:3px 0 0!important}.permission-list span,.project-checks span{display:block}.permission-list small,.project-checks small{color:var(--text-muted);margin-top:4px;line-height:1.5;display:block}.project-checks{grid-template-columns:1fr 1fr;display:grid}.project-checks legend{grid-column:1/-1}.enabled-check{align-items:center;gap:9px;display:flex!important}.settings-notice{color:#246345;background:#eaf6ef;border:1px solid #badbc9;border-radius:8px;padding:12px 15px;display:block}.project-settings>.settings-card{margin:0}.project-settings .settings-card>form{margin-top:8px}.project-settings .owner-access-settings>p:first-child{display:none}.member-chips{flex-wrap:wrap;gap:9px;margin:16px 0 0;padding:0;list-style:none;display:flex}.member-chips li{border:1px solid var(--line);background:#f8fbfc;border-radius:9px;padding:10px 13px}.member-chips small{color:var(--text-muted);margin-left:8px}.danger-card{border-color:#e7caca}.danger-card>button{margin-top:16px}@media (width<=760px){.settings-heading{align-items:flex-start;gap:15px}.settings-heading .create-button{padding:10px 12px}.project-access-grid,.project-checks{grid-template-columns:1fr}.settings-card{padding:17px}.settings-tabs button{padding:9px 11px!important}.settings-tabs button svg{display:none}.project-settings .production-formgrid{grid-template-columns:1fr}}.owner-finance-page{gap:16px;display:grid}.owner-finance-tabs{gap:8px;margin-top:18px;display:flex}.owner-finance-tabs button{border:1px solid var(--line);color:var(--teal);background:#fff;border-radius:7px;padding:9px 13px}.owner-finance-tabs button.active{background:var(--teal);border-color:var(--teal);color:#fff}.owner-finance-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.owner-finance-summary>div{background:var(--pale);border-radius:8px;padding:15px}.owner-finance-summary small,.owner-finance-summary strong{display:block}.owner-finance-summary small{color:var(--text-muted)}.owner-finance-summary strong{margin-top:8px;font-size:18px}.owner-finance-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:15px 0;display:grid}.owner-finance-list article>div:last-child{text-align:right}.owner-finance-list small{color:var(--text-muted);margin-top:5px;display:block}.owner-finance-list p{color:#496675;margin:7px 0 0}.owner-finance-list .income{color:#16816b}.owner-finance-list .expense{color:#b85d4f}.owner-clear-filter{margin-bottom:10px}.owner-guest-page .muted,.owner-guest-page .owner-number span,.owner-guest-page .owner-donut small,.owner-guest-page .owner-legend small,.owner-guest-page .owner-balance small,.owner-guest-page .owner-files small,.owner-guest-page .owner-finance-summary small,.owner-guest-page .owner-finance-list small{color:#425f6c}.owner-guest-page .owner-finance-list small{line-height:1.55}.owner-finance-filter-panel p{color:#425f6c;margin:0 0 12px;font-size:14px}.owner-finance-filters{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.owner-finance-filters select,.owner-finance-filters input,.owner-finance-filters button{box-sizing:border-box;width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b9cfd7;border-radius:7px;padding:8px 10px;font-size:14px}.owner-finance-filters button{color:var(--teal);cursor:pointer}.owner-custom-dates{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px;max-width:540px;margin-top:12px;display:grid}.owner-custom-dates label{color:#425f6c;flex-direction:column;gap:6px;min-width:0;font-size:13px;display:flex}.owner-custom-dates input{box-sizing:border-box;width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b9cfd7;border-radius:7px;padding:8px 10px;font-size:14px}.owner-custom-dates span{color:#64808b;padding-bottom:11px}[data-slot=select-trigger]{flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:8px!important;display:flex!important}[data-slot=select-trigger]>[data-slot=select-value]{text-overflow:ellipsis!important;white-space:nowrap!important;flex:auto!important;min-width:0!important;overflow:hidden!important}[data-slot=select-trigger]>svg{flex:0 0 16px!important;width:16px!important;height:16px!important;margin-left:auto!important;display:block!important}[data-slot=select-content]{z-index:1000!important;color:#102f3d!important;background:#fff!important;border:1px solid #c7d7df!important;border-radius:8px!important;padding:6px!important;box-shadow:0 10px 28px #102f3d2e!important}[data-slot=select-item]{box-sizing:border-box!important;color:#102f3d!important;background:#fff!important;min-height:36px!important;padding:8px 34px 8px 10px!important;line-height:20px!important}[data-slot=select-item][data-highlighted]{color:#126c74!important;background:#eaf4f5!important}.owner-expense-price{margin-top:10px;font-size:18px;display:block}.owner-expense-list article>button{align-self:center}.owner-evidence-button{min-height:38px;color:var(--teal);font:inherit;cursor:pointer;background:#fff;border:1px solid #b9cfd7;border-radius:7px;padding:7px 10px;font-size:13px}.owner-evidence-backdrop{box-sizing:border-box;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:16px}.owner-evidence-modal{box-sizing:border-box;background:#fff;border-radius:14px;width:min(720px,100%);max-height:88vh;padding:24px;position:relative;overflow:auto}.owner-evidence-modal h2{margin:0;padding-right:44px}.owner-evidence-meta{color:#425f6c;margin-top:6px;display:block}.owner-evidence-summary{background:var(--pale);border-radius:9px;justify-content:space-between;align-items:baseline;gap:14px;margin-top:18px;padding:14px;display:flex}.owner-evidence-summary strong{font-size:20px}.owner-evidence-summary span{color:#425f6c}.owner-payment-lines{margin-top:14px}.owner-payment-lines p{border-bottom:1px solid var(--line);color:#425f6c;justify-content:space-between;gap:12px;margin:0;padding:10px 0;display:flex}.owner-payment-lines strong{color:var(--ink);white-space:nowrap}.owner-evidence-close{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:8px;position:absolute;top:12px;right:12px}.owner-evidence-close svg{width:22px;height:22px;display:block}.owner-evidence-grid{grid-template-columns:repeat(auto-fill,minmax(120px,160px));gap:12px;margin-top:18px;display:grid}.owner-evidence-grid>:is(a,button){border:1px solid var(--line);color:var(--teal);font:inherit;text-align:center;cursor:pointer;background:#f5f8fa;border-radius:9px;flex-direction:column;padding:0;font-size:13px;font-weight:700;text-decoration:none;display:flex;overflow:hidden}.owner-evidence-grid>:is(a,button)>span{padding:8px}.owner-evidence-grid img{object-fit:contain;background:#fff;width:100%;height:120px;display:block}.owner-evidence-pdf{justify-content:center;align-items:center;gap:8px;min-height:158px}.owner-evidence-pdf svg{width:30px;height:30px}.owner-image-preview{z-index:70;box-sizing:border-box;background:#07171de8;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:54px 14px 20px;position:fixed;inset:0}.owner-image-preview>button{z-index:1;color:#fff;cursor:pointer;background:#102f3dcc;border:1px solid #ffffff80;border-radius:50%;padding:9px;position:fixed;top:12px;right:12px}.owner-image-preview>button svg{width:26px;height:26px;display:block}.owner-image-preview>img{object-fit:contain;width:100%;height:100%;display:block}@media (width<=700px){.owner-guest-page{width:100%;max-width:100vw;overflow-x:hidden}.owner-guest-page>header,.owner-guest-page>main,.owner-guest-page .owner-home,.owner-guest-page .panel{box-sizing:border-box;min-width:0;max-width:100%}.owner-guest-page .owner-home .row{flex-wrap:wrap;min-width:0}.owner-guest-page .owner-gantt{overflow:visible}.owner-guest-page .owner-gantt-head{display:none}.owner-guest-page .owner-gantt-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;min-width:0;display:grid}.owner-guest-page .owner-gantt-row>span:first-child{min-width:0}.owner-guest-page .owner-gantt-row>span:first-child strong,.owner-guest-page .owner-gantt-row>span:first-child small{overflow-wrap:anywhere}.owner-guest-page .owner-gantt-row>.owner-timeline{grid-area:2/1/auto/-1}.owner-finance-summary{grid-template-columns:1fr}.owner-finance-summary small,.owner-finance-list small,.owner-number span{font-size:14px}.owner-finance-list article{grid-template-columns:1fr}.owner-finance-list article>div:last-child{text-align:left}.owner-expense-list article{grid-template-columns:minmax(0,1fr) auto}.owner-expense-list article>button{align-self:end;min-height:40px}.owner-finance-filters{grid-template-columns:1fr 1fr}.owner-finance-filters button{grid-column:1/-1}.owner-money-row{grid-template-columns:1fr 1fr;display:grid}.owner-number{width:100%}.owner-reserve-chart{align-items:flex-start}.owner-donut{width:112px;height:112px}.owner-legend,.owner-legend button{min-width:0}.owner-guest-page>header h1{overflow-wrap:anywhere}.owner-evidence-button{min-height:44px}.owner-evidence-modal{max-height:92vh;padding:20px 14px}.owner-evidence-summary,.owner-payment-lines p{flex-direction:column;align-items:flex-start}.owner-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-evidence-grid img{height:108px}.owner-evidence-pdf{min-height:146px}}.settings-modal .settings-delete{color:#a73e36;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #c75349;border-radius:8px;margin-top:10px;padding:11px 16px;font-weight:600}.settings-modal .settings-delete:hover{background:#fff3f1}.settings-modal .settings-delete:disabled{cursor:default}.business-ledger{flex-direction:column;gap:18px;min-width:0;display:flex}.business-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin:0;display:flex}.business-heading.compact{padding-top:0}.business-heading h1{margin:0 0 6px}.business-heading p{margin:0;line-height:1.6}.business-actions{justify-content:flex-end;gap:10px;margin:0;display:flex}.business-filterbar{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:repeat(3,minmax(160px,220px));gap:12px;margin:0;padding:14px 16px;display:grid}.business-filterbar .picker{min-height:42px;width:100%!important}.business-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;display:grid}.business-stats .metric{box-sizing:border-box;min-width:0}.business-tabs{margin:0}.business-tabs [data-slot=tabs-list]{border:1px solid var(--line);background:#e8f0f3;border-radius:10px;padding:5px;display:inline-flex}.business-tabs [data-slot=tabs-trigger]{color:var(--ink)!important;background:0 0!important;border:1px solid #0000!important}.business-tabs [data-slot=tabs-trigger][data-state=active]{box-shadow:0 1px 4px #173d4914;color:var(--teal)!important;background:#fff!important;border-color:#b9d0d8!important}.business-summary,.business-basis,.business-records{box-sizing:border-box;width:100%;overflow:hidden;margin:0!important}.business-summary h2,.business-basis h2,.business-records h2{margin:0 0 16px}.business-basis{margin-top:0!important}.business-basis .table-wrap{max-width:100%;overflow-x:auto}.business-records>div:has(>table){max-width:100%;overflow-x:auto}.business-basis table{min-width:720px}.business-note{color:#496875;background:#f5f9fa;border:1px solid #cfe0e6;border-radius:10px;padding:16px 18px;font-size:14px;line-height:1.75}.business-record-table{min-width:1060px}.business-record-table td:nth-child(5),.business-record-table td:nth-child(6),.business-record-table td:nth-child(7){text-align:right;white-space:nowrap}.business-save-status:empty{display:none}.business-save-status{color:#24734c;background:#eef8f5;border:1px solid #bddbd5;border-radius:8px;margin:0;padding:10px 13px;font-size:13px}[data-slot=dialog-content].business-dialog{width:min(720px,100vw - 32px)!important;max-width:min(720px,100vw - 32px)!important;padding:28px!important}.business-dialog [data-slot=dialog-header]{padding-right:30px}.business-entryform{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.business-entryform>.field{flex-direction:column;gap:7px;min-width:0;margin:0!important;display:flex!important}.business-dialog [data-slot=input],.business-dialog [data-slot=select-trigger]{box-sizing:border-box!important;color:#102f3d!important;width:100%!important;min-height:44px!important;font:inherit!important;box-shadow:none!important;background:#fff!important;border:1px solid #9fb9c7!important;border-radius:8px!important;margin:0!important;padding:9px 12px!important}.business-dialog [data-slot=input]:hover,.business-dialog [data-slot=select-trigger]:hover{border-color:#6f9dab!important}.business-dialog [data-slot=input]:focus-visible,.business-dialog [data-slot=select-trigger]:focus-visible{border-color:#147c83!important;outline:0!important;box-shadow:0 0 0 3px #147c8324!important}.business-dialog [data-slot=input]:disabled{color:#718690!important;background:#eef3f5!important}.business-entryform small{line-height:1.5}.business-entryform>p[role=alert],.business-form-actions{grid-column:1/-1}.business-entryform>p[role=alert]{color:#a73e36;margin:0}.business-form-actions{border-top:1px solid var(--line);background:#fff;grid-template-columns:1fr 1fr;gap:12px;margin:4px -28px -28px;padding:16px 28px 22px;display:grid;position:sticky;bottom:-28px}.business-form-actions button{min-height:44px;width:100%!important}.business-form-actions .button:not(.secondary){border-color:var(--teal)!important;background:var(--teal)!important;color:#fff!important}@media (width<=900px){.business-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.business-filterbar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.business-heading{display:grid}.business-actions{flex-wrap:wrap;justify-content:flex-start}.business-filterbar,.business-entryform{grid-template-columns:1fr}.business-stats{grid-template-columns:1fr 1fr}.business-entryform>p[role=alert],.business-form-actions{grid-column:auto}.business-form-actions{grid-template-columns:1fr;margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}[data-slot=dialog-content].business-dialog{padding:22px 18px!important}}.purchase-ledger-wrap{overscroll-behavior:contain;scrollbar-gutter:stable both-edges;border:1px solid var(--line);background:#fff;border-radius:10px;max-height:min(68vh,720px);position:relative;overflow:auto!important}.purchase-ledger-table{border-collapse:separate!important;border-spacing:0!important;margin:0!important}.purchase-ledger-table thead th{z-index:6;box-shadow:0 1px 0 var(--line);top:0;background:#f1f6f8!important;position:sticky!important}.purchase-ledger-table th:first-child,.purchase-ledger-table td:first-child{box-sizing:border-box;z-index:3;background:#fff;width:110px;min-width:110px;max-width:110px;left:0;position:sticky!important}.purchase-ledger-table th:nth-child(2),.purchase-ledger-table td:nth-child(2){box-sizing:border-box;z-index:3;background:#fff;width:150px;min-width:150px;max-width:150px;left:110px;position:sticky!important}.purchase-ledger-table th:nth-child(3),.purchase-ledger-table td:nth-child(3){box-sizing:border-box;z-index:3;background:#fff;width:240px;min-width:240px;max-width:240px;left:260px;position:sticky!important}.purchase-ledger-table th:nth-child(4),.purchase-ledger-table td:nth-child(4){box-sizing:border-box;z-index:3;background:#fff;width:205px;min-width:205px;max-width:205px;left:500px;box-shadow:8px 0 12px -12px #14344299;position:sticky!important}.purchase-ledger-table thead th:nth-child(-n+4){z-index:8;background:#f1f6f8!important}.purchase-ledger-table tbody tr:hover td,.purchase-ledger-table tbody tr:hover td:nth-child(-n+4){background:#f8fbfc}.purchase-ledger-wrap::-webkit-scrollbar{width:12px;height:14px}.purchase-ledger-wrap::-webkit-scrollbar-thumb{background:#7f939c;border:3px solid #fff;border-radius:10px}.purchase-ledger-wrap::-webkit-scrollbar-track{background:#edf2f4}.purchase-ledger-table td:nth-child(3){overflow-wrap:anywhere;white-space:normal!important}.purchase-ledger-table td:nth-child(8){min-width:230px;white-space:normal!important}.purchase-ledger-table td:last-child .link{white-space:nowrap}@media (width<=760px){.purchase-ledger-wrap{max-height:70vh}.purchase-ledger-table th:first-child,.purchase-ledger-table td:first-child{width:96px;min-width:96px;max-width:96px}.purchase-ledger-table th:nth-child(2),.purchase-ledger-table td:nth-child(2){width:125px;min-width:125px;max-width:125px;left:96px}.purchase-ledger-table th:nth-child(3),.purchase-ledger-table td:nth-child(3){width:190px;min-width:190px;max-width:190px;left:221px}.purchase-ledger-table th:nth-child(4),.purchase-ledger-table td:nth-child(4){width:185px;min-width:185px;max-width:185px;left:411px}}.purchase-entry-actions{align-items:center;gap:10px;display:flex}.payable-panel{border-color:#bed3dc}.payable-panel.collapsed{padding-top:16px;padding-bottom:16px}.payable-panel>.toolbar{align-items:flex-start}.payable-panel h2{margin:0}.payable-heading-title,.payable-heading-actions{align-items:center;gap:10px;display:flex}.payable-heading-title>span{color:var(--text-muted)}.payable-description{margin:8px 0 14px!important}.payable-note-field{grid-column:1/-1}.payable-batch-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.payable-batch-actions input{width:150px!important;margin:0!important}.payable-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.payable-summary span{background:var(--pale);color:var(--text-muted);border-radius:9px;flex-direction:column;gap:7px;padding:14px 16px;display:flex}.payable-summary strong{color:var(--ink);font-size:17px}.payable-table-wrap{border:1px solid var(--line);border-radius:9px;max-height:360px;overflow:auto}.payable-table-wrap table{border-collapse:collapse;width:100%}.payable-table-wrap th,.payable-table-wrap td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px}.payable-table-wrap th{z-index:1;background:#f1f6f8;position:sticky;top:0}.payable-table-wrap td:nth-child(4){min-width:230px}.payable-table-wrap td:last-child{white-space:nowrap}.payable-table-wrap td:last-child .link+.link{margin-left:12px}[data-slot=dialog-content].payable-dialog{width:min(760px,100vw - 32px)!important;max-width:min(760px,100vw - 32px)!important}.payable-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px;display:grid!important}.payable-form>.field{margin:0!important}.payable-form input,.payable-form select{box-sizing:border-box;width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #9fb9c7;border-radius:8px;margin-top:7px;padding:9px 12px}.payable-file-field{grid-column:1/-1}.payable-file-field>span{color:var(--text-muted)}.payable-file-zone{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:64px;margin-top:7px;text-align:left!important;background:#f3f7f9!important;border:1px dashed #9fb9c7!important;border-radius:9px!important;width:100%!important;padding:12px 15px!important;display:flex!important}.payable-file-zone>span{color:var(--text-muted);flex:1}.payable-file-zone small{color:var(--text-muted)}.payable-file-zone:focus{outline:2px solid var(--teal);outline-offset:2px}.payable-file-list{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.payable-file-list span{background:var(--pale);overflow-wrap:anywhere;border-radius:7px;align-items:center;gap:6px;max-width:100%;padding:6px 8px;display:flex}.payable-file-list button{color:#a73e36!important;background:0 0!important;border:0!important;padding:0 3px!important}.payable-form>p[role=alert],.payable-form-actions{grid-column:1/-1}.payable-form-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.payable-form-actions button{width:100%}.purchase-overall-summary{flex-wrap:wrap;align-items:stretch;gap:10px!important;margin:0!important;padding:12px 14px!important;display:flex!important}.purchase-overall-summary>div,.purchase-overall-summary>button{text-align:center;white-space:nowrap;flex-direction:column;flex:150px;justify-content:center;align-items:center;font-size:13px;display:flex;min-width:0!important;padding:11px 16px!important}.purchase-overall-summary>button:not(.purchase-pending-entry){background:var(--ui-surface);border:1px solid var(--ui-line);color:var(--ui-ink);border-radius:10px}.purchase-overall-summary>button:not(.purchase-pending-entry):hover{background:var(--ui-soft)}.purchase-overall-summary strong{margin-top:5px!important}.purchase-overall-summary>.purchase-pending-entry{flex-direction:row;align-self:center;min-height:40px;color:#fff!important;flex:0 auto!important}.purchase-summary-title{justify-content:center;align-items:center;gap:6px;display:inline-flex}.payable-caret{color:inherit;justify-content:center;align-items:center;transition:transform .18s;display:inline-flex}.payable-caret svg{display:block}.procurement-delete{color:#b42318!important;border-color:#e7a7a2!important}.procurement-delete:hover{background:#fdf1f0!important}.statement-history{border:1px solid var(--ui-line);background:var(--ui-soft);border-radius:10px;margin-top:14px}.statement-history>summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ui-muted);list-style:revert;padding:10px 14px;font-size:13px}.statement-history[open]>summary{border-bottom:1px solid var(--ui-line)}.statement-history>.member-project{box-shadow:none;border:0;border-top:1px dashed var(--ui-line);margin:10px 14px;padding:10px 0}.statement-history>.member-project:first-of-type{border-top:0}.statement-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 2px;display:flex}.statement-actions .button{white-space:nowrap;min-height:38px;line-height:1.4;margin:0!important;padding:8px 16px!important;font-size:13px!important}.statement-actions .quote-upload{cursor:pointer;margin:0!important}.statement-actions .badge{margin-left:2px}.purchase-breakdown{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important;gap:24px!important;display:grid!important}.production-app .purchase-breakdown>.purchase-paid-summary,.production-app .purchase-breakdown>.purchase-advance-summary{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:12px;min-width:0;display:grid}.purchase-paid-summary>strong,.purchase-advance-summary>strong{grid-area:2/1}.production-app .purchase-payment-breakdown,.production-app .purchase-repayment-breakdown{text-align:left;color:var(--ui-muted);grid-area:1/2/3;align-self:center;gap:5px;font-size:11px;margin:0!important;display:grid!important}.purchase-payment-breakdown>span,.purchase-repayment-breakdown>span{white-space:nowrap;justify-content:space-between;gap:8px;display:flex}.purchase-payment-breakdown>span>span:last-child,.purchase-repayment-breakdown>span>span:last-child{text-align:right;font-variant-numeric:tabular-nums}@media (width>=1101px){.purchase-overall-summary{gap:12px!important}}@media (width<=1100px){.purchase-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))!important}.purchase-overall-summary>.purchase-pending-entry{flex:100%!important}}@media (width<=760px){.purchase-entry-actions,.payable-batch-actions{width:100%}.purchase-entry-actions .button,.payable-batch-actions .button{flex:1}.payable-summary,.payable-form{grid-template-columns:1fr}.payable-file-field,.payable-note-field,.payable-form>p[role=alert],.payable-form-actions{grid-column:auto}.payable-form-actions{grid-template-columns:1fr}.payable-panel>.toolbar{align-items:stretch}.payable-batch-actions input{width:100%!important}}.payable-preview-list{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.payable-preview-item{position:relative}.payable-preview-remove{color:#516774;z-index:1;background:#fff;border:1px solid #cad8df;border-radius:50%;width:24px;height:24px;line-height:20px;position:absolute;top:0;right:0}.task-dialog .field select,.task-dialog .field textarea{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #b9cfd7;border-radius:8px;padding:10px 12px}.task-dialog .field select{min-height:42px}.task-dialog .task-form-actions{border-top:1px solid var(--line);z-index:2;background:#fff;margin-top:16px;padding:14px 0;position:sticky;bottom:-28px}.task-dialog .task-form-actions button{flex:1}.payable-copy-toast{z-index:1200;color:#fff;pointer-events:none;background:#143442;border-radius:9px;padding:11px 22px;font-size:15px;position:fixed;top:88px;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #102f3d33}.mobile-bottom-nav,.mobile-action-backdrop,.mobile-nav-scrim{display:none}@media (width<=700px){:root{--mobile-bar-height:68px}.production-app{min-width:0;padding-bottom:calc(var(--mobile-bar-height) + env(safe-area-inset-bottom));display:block;overflow-x:hidden}.production-workspace{width:100%;min-width:0}.production-topbar{z-index:20;gap:10px;height:56px;padding:0 14px;position:sticky;top:0;box-shadow:0 1px 8px #14344210}.production-topbar>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.production-topbar b{margin:0 5px}.nav-trigger{place-items:center;width:40px;height:40px;background:#edf5f7!important;border-radius:10px!important;padding:0!important;display:grid!important}.nav-trigger svg{width:21px;height:21px}.preview-switch select{height:38px;font-size:12px;min-width:0!important;max-width:118px!important;padding-left:8px!important}.production-content{box-sizing:border-box;width:100%;max-width:none;padding:18px 12px 28px}.project-heading{margin-bottom:18px;padding:0 2px;display:block}.project-heading>div{min-width:0}.project-heading h1{letter-spacing:-.4px;overflow-wrap:anywhere;margin:6px 0 7px;font-size:24px;line-height:1.25}.project-heading p{font-size:13px;line-height:1.55}.project-heading>.create-button{display:none}.page-heading{margin-bottom:18px;display:grid}.page-heading h1{font-size:24px}.page-heading .create-button{width:100%;min-height:46px}.workspace-card,.workspace-card>section,.panel,.empty-card{box-sizing:border-box;min-width:0;max-width:100%}.panel{border-radius:12px!important;padding:16px 14px!important}.empty-card{padding:42px 18px}.toolbar,.row{flex-wrap:wrap;gap:10px;min-width:0}.toolbar>h2,.row>h2{flex:190px;margin:0;font-size:18px}.toolbar .right{margin-left:0}.button,.create-button,.back-button{touch-action:manipulation;min-height:44px}.workspace-card:not(:has(.owner-home)) button{touch-action:manipulation;min-height:44px}.production-totals{grid-template-columns:1fr 1fr;gap:9px}.production-totals>div{padding:13px}.production-totals strong{font-size:18px}.project-grid{grid-template-columns:1fr;gap:12px}.project-card{min-height:136px;padding:18px}.project-card h2{margin:12px 0 28px;font-size:20px}.notice{z-index:1300;left:12px;right:12px;bottom:calc(var(--mobile-bar-height) + env(safe-area-inset-bottom) + 10px);text-align:center}.production-sidebar{z-index:110;visibility:hidden;pointer-events:none;width:min(84vw,320px);max-width:320px;box-shadow:none;overflow-y:auto}.production-sidebar.open{visibility:visible;pointer-events:auto;transform:translate(0);box-shadow:16px 0 50px #06151d55}.production-brand{height:92px;padding:14px 18px}.production-brand img{width:154px}.nav-close{background:#ffffff12;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;display:grid;top:8px;right:8px}.navitem{width:calc(100% - 18px);min-height:48px;margin:2px 9px;padding:12px 14px}.mobile-nav-scrim{z-index:105;background:#07171d88;border:0;display:block;position:fixed;inset:0}.mobile-bottom-nav{z-index:90;height:calc(var(--mobile-bar-height) + env(safe-area-inset-bottom));box-sizing:border-box;padding:7px 7px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;border-top:1px solid #d5e1e7;justify-content:space-around;align-items:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #102f3d12}.mobile-bottom-nav button{color:#69818d;min-width:58px;min-height:52px;font:inherit;touch-action:manipulation;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:11px;display:flex;position:relative}.mobile-bottom-nav svg{width:21px;height:21px}.mobile-bottom-nav button.active{color:var(--teal);font-weight:700}.mobile-bottom-nav .mobile-register{color:var(--teal);font-weight:700;transform:translateY(-8px)}.mobile-register-icon{background:var(--teal);color:#fff;border-radius:50%;place-items:center;width:44px;height:44px;font-size:27px;font-weight:300;line-height:1;display:grid;box-shadow:0 6px 18px #147c8350}.mobile-action-backdrop{z-index:120;background:#07171d88;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-action-sheet{box-sizing:border-box;width:100%;padding:8px 18px calc(24px + env(safe-area-inset-bottom));background:#fff;border-radius:22px 22px 0 0;box-shadow:0 -18px 60px #07171d3d}.mobile-sheet-handle{background:#c7d4da;border-radius:4px;width:42px;height:4px;margin:1px auto 16px}.mobile-action-sheet header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.mobile-action-sheet h2{margin:0;font-size:21px}.mobile-action-sheet p{color:var(--text-muted);margin:5px 0 0;font-size:13px}.mobile-action-sheet header button{width:40px;height:40px;color:var(--ink);background:#f0f5f7;border:0;border-radius:50%;place-items:center;display:grid}.mobile-action-sheet header svg{width:20px}.mobile-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.mobile-action-grid button{min-height:92px;color:var(--ink);font:inherit;background:#f7fafb;border:1px solid #d8e4e9;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:10px 6px;font-size:13px;display:flex}.mobile-action-grid svg{width:23px;height:23px;color:var(--teal)}.modal-backdrop{place-items:end center;padding-top:8px}.modal{width:100%;max-height:calc(100dvh - 8px);padding:24px 18px calc(22px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;overflow:auto}[data-slot=dialog-content].appdialog,[data-slot=dialog-content].business-dialog,[data-slot=dialog-content].payable-dialog{width:100%!important;max-width:none!important;max-height:calc(100dvh - 8px)!important;padding:14px 16px calc(16px + env(safe-area-inset-bottom))!important;overscroll-behavior:contain!important;border-radius:20px 20px 0 0!important;flex-direction:column!important;gap:12px!important;margin:0!important;display:flex!important;inset:auto 0 0!important;overflow-y:auto!important;transform:none!important}[data-slot=dialog-content].appdialog>[data-slot=dialog-close],[data-slot=dialog-content].business-dialog>[data-slot=dialog-close],[data-slot=dialog-content].payable-dialog>[data-slot=dialog-close]{float:none!important;color:#102f3d!important;z-index:6!important;background:#e3edf0!important;border:0!important;border-radius:50%!important;flex:none!important;order:-1!important;align-self:flex-end!important;place-items:center!important;width:40px!important;height:40px!important;margin:-4px -4px -28px 0!important;padding:0!important;display:grid!important;position:sticky!important;top:0!important}[data-slot=dialog-content] [data-slot=dialog-header]{padding-right:44px}.entryform,.formgrid,.payable-form,.business-entryform{grid-template-columns:1fr!important}.entryform .field,.formgrid .field,.payable-form>.field{min-width:0}.entryform input,.entryform select,.entryform textarea,.formgrid input,.formgrid select,.formgrid textarea{font-size:16px!important}.payable-form-actions,.business-form-actions,.task-form-actions{bottom:calc(-18px - env(safe-area-inset-bottom))!important;z-index:5!important;margin:8px -16px calc(-18px - env(safe-area-inset-bottom))!important;padding:12px 16px calc(14px + env(safe-area-inset-bottom))!important;border-top:1px solid var(--line)!important;background:#fff!important;position:sticky!important;box-shadow:0 -8px 20px #102f3d0d!important}.payable-file-zone{flex-direction:column!important;align-items:flex-start!important}.payable-file-zone>span{flex:auto}.payable-panel>.toolbar{display:grid!important}.payable-heading-actions{justify-content:flex-end;width:100%;display:flex}.payable-heading-actions .button{width:auto}.payable-batch-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.payable-batch-actions input{grid-column:1/-1;min-height:44px;width:100%!important}.payable-summary{grid-template-columns:1fr 1fr}.payable-summary span:last-child{grid-column:1/-1}.payable-table-wrap{background:0 0;border:0;border-radius:0;max-height:none;overflow:visible}.payable-table-wrap table,.payable-table-wrap tbody,.payable-table-wrap tr,.payable-table-wrap td{box-sizing:border-box;width:100%;display:block}.payable-table-wrap thead{display:none}.payable-table-wrap tbody{gap:10px;display:grid}.payable-table-wrap tr{border:1px solid var(--line);background:#fff;border-radius:12px;padding:13px 14px;box-shadow:0 2px 8px #14344208}.payable-table-wrap td{overflow-wrap:anywhere;grid-template-columns:88px minmax(0,1fr);gap:8px;white-space:normal!important;border:0!important;min-width:0!important;padding:8px 0!important;display:grid!important}.payable-table-wrap td:before{color:#708690;font-size:12px}.payable-table-wrap td:first-child:before{content:"计划日期"}.payable-table-wrap td:nth-child(2):before{content:"供应商 / 事项"}.payable-table-wrap td:nth-child(3):before{content:"待付金额"}.payable-table-wrap td:nth-child(4):before{content:"收款账户"}.payable-table-wrap td:nth-child(5):before{content:"状态"}.payable-table-wrap td:nth-child(6):before{content:"操作"}.payable-table-wrap td:last-child{flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid #e7eef2!important;padding-top:11px!important;display:flex!important}.payable-table-wrap td:last-child:before{flex:0 0 80px}.payable-table-wrap td:last-child .link{border:1px solid #b9cdd5!important;min-height:40px!important;margin:0!important;padding:8px 10px!important}.purchase-summary{grid-template-columns:1fr 1fr!important;gap:9px!important;padding:12px!important;display:grid!important;overflow:visible!important}.purchase-summary>div,.purchase-summary>button{min-width:0!important;padding:5px!important}.purchase-summary strong{font-size:17px}.purchase-entry-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.purchase-filter-toolbar small{display:none}.purchase-ledger-wrap{scrollbar-gutter:auto;background:0 0;border:0;max-height:none;overflow:visible!important}.purchase-ledger-table,.purchase-ledger-table tbody,.purchase-ledger-table tbody tr,.purchase-ledger-table tbody td{box-sizing:border-box;width:100%!important;min-width:0!important;max-width:none!important;display:block!important}.purchase-ledger-table{min-width:0!important}.purchase-ledger-table thead{border:1px solid var(--line);background:#f1f6f8;border-radius:10px;margin-bottom:10px;padding:10px;display:block}.purchase-ledger-table thead tr{grid-template-columns:1fr 1fr;gap:8px;display:grid}.purchase-ledger-table thead th{display:block;width:auto!important;min-width:0!important;max-width:none!important;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important;position:static!important}.purchase-ledger-table thead th:nth-child(3),.purchase-ledger-table thead th:nth-child(8),.purchase-ledger-table thead th:nth-child(9){display:none!important}.purchase-ledger-table thead button,.purchase-ledger-table thead select{text-align:left;background:#fff!important;border:1px solid #c7d8df!important;width:100%!important;min-height:40px!important;margin:0!important}.purchase-ledger-table tbody{gap:10px;display:grid!important}.purchase-ledger-table tbody tr{border:1px solid var(--line);background:#fff;border-radius:12px;padding:13px 14px;box-shadow:0 2px 8px #14344208}.purchase-ledger-table tbody td{overflow-wrap:anywhere;grid-template-columns:88px minmax(0,1fr);gap:8px;box-shadow:none!important;white-space:normal!important;background:0 0!important;border:0!important;padding:7px 0!important;display:grid!important;position:static!important;left:auto!important}.purchase-ledger-table tbody td:before{color:#708690;font-size:12px;background:0 0!important;width:auto!important;height:auto!important;position:static!important;transform:none!important}.purchase-ledger-table tbody td:first-child:before{content:"日期"}.purchase-ledger-table tbody td:nth-child(2):before{content:"类别"}.purchase-ledger-table tbody td:nth-child(3):before{content:"采购事项"}.purchase-ledger-table tbody td:nth-child(4):before{content:"金额 / 进度"}.purchase-ledger-table tbody td:nth-child(5):before{content:"付款来源"}.purchase-ledger-table tbody td:nth-child(6):before{content:"发票"}.purchase-ledger-table tbody td:nth-child(7):before{content:"审核"}.purchase-ledger-table tbody td:nth-child(8):before{content:"操作"}.purchase-ledger-table tbody td:nth-child(9):before{content:"返点金额"}.purchase-ledger-table tbody td:nth-child(8){flex-wrap:wrap;align-items:center;gap:8px;margin-top:5px;border-top:1px solid #e7eef2!important;padding-top:11px!important;display:flex!important}.purchase-ledger-table tbody td:nth-child(8):before{flex:0 0 80px}.purchase-ledger-table tbody td .link{border:1px solid #b9cdd5!important;border-radius:7px!important;min-height:40px!important;margin:0!important;padding:8px 10px!important}.production-tablewrap{border:1px solid var(--line);overscroll-behavior-x:contain;background:#fff;border-radius:10px;margin:12px 0}.production-tablewrap table{min-width:620px}.production-tablewrap th,.production-tablewrap td{padding:10px}}[data-slot=table-container]{box-sizing:border-box;width:100%;max-width:100%;overflow-x:auto}@media (width<=380px){.mobile-bottom-nav button{min-width:48px}.mobile-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.production-totals,.purchase-summary,.payable-summary{grid-template-columns:1fr!important}.payable-summary span:last-child{grid-column:auto}}@media (width<=700px){.production-app .project-heading{margin-bottom:10px;padding:0;display:block}.production-app .project-heading .workspace-breadcrumb{display:none}.production-app .project-heading>div>span{font-size:12px}.production-app .project-heading h1{letter-spacing:-.3px;margin:3px 0 2px;font-size:20px;line-height:1.2}.production-app .project-heading p.muted{margin:0;font-size:12px;line-height:1.4}.production-app .purchase-overall-summary{gap:8px!important;padding:10px 12px!important}.production-app .purchase-overall-summary>div,.production-app .purchase-overall-summary>button{font-size:11px;padding:8px 10px!important}.production-app .purchase-overall-summary strong{margin-top:3px;font-size:16px}.production-app .purchase-overall-summary>.purchase-pending-entry{min-height:38px;font-size:13px}.production-app .purchase-month-button{padding:6px 10px}.production-app .purchase-month-button strong{font-size:18px}.production-app .purchase-month-button small{font-size:11px}.production-app .purchase-breakdown{gap:8px!important;padding:10px 12px!important}.production-app .purchase-breakdown>div,.production-app .purchase-breakdown>button{font-size:11px;padding:8px 10px!important}.production-app .purchase-breakdown small{margin-top:3px;font-size:10px;line-height:1.5}.production-app .purchase-filter-toolbar{gap:6px!important;margin:8px 0!important}.production-app .purchase-filter-toolbar .button{min-height:34px;padding:6px 10px;font-size:12px}.production-app .purchase-filter-toolbar .workspace-select-trigger{height:34px!important;min-height:34px!important;font-size:12px!important}.production-app .purchase-ledger-table thead{margin-bottom:8px;padding:8px}.production-app .purchase-ledger-table thead tr{gap:6px}.production-app .purchase-ledger-table thead th{display:block!important}.production-app .purchase-ledger-table thead th:nth-child(6){display:none!important}.production-app .purchase-ledger-table thead button,.production-app .purchase-ledger-table thead select,.production-app .purchase-ledger-table thead input,.production-app .purchase-ledger-table thead .workspace-select-trigger{height:36px!important;min-height:36px!important;font-size:12px!important}.production-app .purchase-breakdown>.purchase-paid-summary,.production-app .purchase-breakdown>.purchase-advance-summary{flex-direction:column;align-items:flex-start;gap:3px;display:flex!important}.production-app .purchase-breakdown>.purchase-paid-summary>strong,.production-app .purchase-breakdown>.purchase-advance-summary>strong{white-space:nowrap;grid-area:auto;margin-top:2px;font-size:16px}.production-app .payable-panel.collapsed{padding-top:11px!important;padding-bottom:11px!important}.production-app .payable-panel.collapsed>.toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex!important}.production-app .payable-panel.collapsed .payable-heading-actions{width:auto!important}.production-app .payable-panel.collapsed .payable-heading-title h2{font-size:16px}.production-app .payable-panel.collapsed .payable-toggle{min-height:34px;padding:5px 12px;font-size:13px}.production-app .purchase-ledger-table.purchase-compact tbody tr{grid-template-columns:auto 1fr auto;grid-template-areas:"date cat amount""title title title""source source source""actions actions actions";gap:2px 12px;padding:12px 14px;display:grid}.production-app .purchase-ledger-table.purchase-compact tbody td{overflow-wrap:anywhere;width:auto!important;min-width:0!important;max-width:none!important;box-shadow:none!important;white-space:normal!important;background:0 0!important;border:0!important;padding:0!important;display:block!important;position:static!important}.production-app .purchase-ledger-table.purchase-compact tbody td:before{content:none!important}.production-app .purchase-ledger-table.purchase-compact tbody td:first-child{color:#708690;white-space:nowrap;grid-area:date;font-size:12px}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(2){color:#708690;grid-area:cat;align-self:center;font-size:12px}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(3){color:var(--ink);grid-area:title;font-size:15px;font-weight:600;line-height:1.4;padding:2px 0!important}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(4){text-align:right;color:var(--ink);white-space:nowrap;grid-area:amount;align-self:start;font-size:17px;font-weight:700}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(4) .subtext{color:#708690;white-space:normal;text-align:right;margin-top:2px;font-size:11px;font-weight:400;display:block}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(5){grid-area:source;font-size:13px}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(6){flex-wrap:wrap;grid-area:actions;justify-content:flex-end;align-items:center;gap:8px;margin-top:6px;border-top:1px solid #edf2f5!important;padding-top:10px!important;display:flex!important}.production-app .purchase-ledger-table.purchase-compact tbody td:nth-child(6) .link{font-size:13px;border:1px solid #b9cdd5!important;border-radius:7px!important;min-height:34px!important;margin:0!important;padding:6px 12px!important}.production-app .payable-table-wrap tbody tr{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:1fr auto;grid-template-areas:"date amount""supplier supplier""account account""status actions";gap:2px 12px;margin-bottom:10px;padding:12px 14px;display:grid;box-shadow:0 2px 8px #14344208}.production-app .payable-table-wrap tbody td{overflow-wrap:anywhere;width:auto!important;min-width:0!important;max-width:none!important;box-shadow:none!important;white-space:normal!important;background:0 0!important;border:0!important;padding:0!important;display:block!important}.production-app .payable-table-wrap tbody td:before{content:none!important}.production-app .payable-table-wrap tbody td:first-child{color:#708690;white-space:nowrap;grid-area:date;font-size:12px}.production-app .payable-table-wrap tbody td:nth-child(2){grid-area:supplier}.production-app .payable-table-wrap tbody td:nth-child(2)>strong{color:var(--ink);font-size:15px;font-weight:600;display:block}.production-app .payable-table-wrap tbody td:nth-child(3){text-align:right;color:var(--ink);white-space:nowrap;grid-area:amount;align-self:start;font-size:17px;font-weight:700}.production-app .payable-table-wrap tbody td:nth-child(4){grid-area:account;font-size:13px}.production-app .payable-table-wrap tbody td:nth-child(5){grid-area:status;align-self:center}.production-app .payable-table-wrap tbody td:nth-child(6){flex-wrap:wrap;grid-area:actions;justify-content:flex-end;align-items:center;gap:8px;display:flex!important}.production-app .payable-table-wrap tbody td:nth-child(6) .link{font-size:13px;border:1px solid #b9cdd5!important;border-radius:7px!important;min-height:34px!important;margin:0!important;padding:6px 12px!important}}[data-ui-theme=dark] .production-app .purchase-ledger-table.purchase-compact tbody tr,[data-ui-theme=dark] .production-app .payable-table-wrap tbody tr{background:var(--ui-surface,#1a2430);border-color:var(--ui-line,#2a3644);box-shadow:none}.purchase-inline-note{color:var(--text-muted);white-space:nowrap;margin-left:7px;font-size:12px;font-weight:400;display:inline}.pricing-sync{color:#7a5c00;background:#fffbe6;border:1px solid #e6b800;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;font-size:13px;display:flex}.owner-qr-card .owner-card-download{border:1px solid var(--teal);background:var(--teal);color:#fff;width:100%;font:inherit;cursor:pointer;border-radius:8px;margin-top:12px;padding:11px 14px;display:block}.owner-qr-card .owner-card-hint{color:var(--text-muted);text-align:left;margin-top:8px;line-height:1.6;display:block}.owner-finance-tablewrap{margin-top:6px}.owner-finance-table{border-collapse:collapse;background:#fff;width:100%;font-size:14px}.owner-finance-table th,.owner-finance-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 14px}.owner-finance-table th{background:var(--pale);white-space:nowrap;color:var(--ink)}.owner-finance-table .owner-finance-sub{color:var(--text-muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.owner-finance-table td:nth-child(4) strong{font-size:15px}.owner-finance-table .owner-evidence-button{border:1px solid var(--teal);color:var(--teal);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:7px;padding:8px 13px}.owner-finance-table .owner-evidence-button:hover{background:#f0f8f9}.owner-finance-table td.empty{text-align:center;color:var(--text-muted);padding:36px 0}.owner-card-notice{color:#187753;text-align:left;word-break:break-all;min-height:0;margin-top:8px;font-size:13px;line-height:1.6;display:block}.owner-finance-table .cell-label{display:none}@media (width<=760px){.procurement-preview{flex-wrap:wrap;row-gap:4px;padding:12px 0}.procurement-preview strong{flex:100%;font-size:15px;line-height:1.5}.procurement-preview span{color:var(--ui-muted);font-size:13px}.procurement-preview .badge{font-size:11px}.owner-finance-tablewrap{background:0 0;border:0;margin:8px 0;overflow-x:visible}.owner-finance-tablewrap .owner-finance-table{min-width:0;width:100%!important}.owner-finance-table thead{display:none}.owner-finance-table,.owner-finance-table tbody{display:block}.owner-finance-table tr{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:12px;flex-wrap:wrap;align-items:center;margin-bottom:6px;padding:6px 10px;display:flex;overflow:hidden}.owner-finance-tablewrap .owner-finance-table td{box-sizing:border-box;text-align:left;overflow-wrap:anywhere;word-break:break-word;border:0;width:50%;min-width:0;font-size:13px;line-height:1.4;display:block;white-space:normal!important;padding:1px 0!important}.owner-finance-tablewrap .owner-finance-table td:before{display:none}.owner-finance-table td:first-child{order:1}.owner-finance-table td:nth-child(2){text-align:right;order:2}.owner-finance-table td:nth-child(3){order:3}.owner-finance-table td:nth-child(5){text-align:right;order:4}.owner-finance-table td:nth-child(4){order:5}.owner-finance-table td:nth-child(6){text-align:right;order:6}.owner-finance-table .cell-label{color:var(--ui-muted);margin-right:5px;font-size:11px;display:inline}.owner-finance-table td strong{font-size:14px}.owner-finance-table .owner-finance-sub{margin:1px 0 0;font-size:11px;display:block}.owner-finance-table td.empty{text-align:center;width:100%;color:var(--ui-muted);padding:22px 0}.owner-finance-table .owner-evidence-button{padding:5px 10px;font-size:12px}}.owner-bottom-nav{display:none}@media (width<=900px){.owner-mobile-header{background:var(--ui-surface);border-bottom:1px solid var(--ui-line);align-items:center;padding:12px 16px}.owner-mobile-header .production-metal-logo img{width:150px;height:auto}.owner-bottom-nav{z-index:45;background:var(--ui-surface);border-top:1px solid var(--ui-line);padding:6px 2px calc(7px + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 18px #1428400d}.owner-bottom-nav button{min-width:0;color:var(--ui-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:3px;padding:4px 0;font-family:inherit;font-size:10px;display:flex}.owner-bottom-nav button svg{background:var(--ui-soft);box-sizing:content-box;border-radius:9px;width:19px;height:19px;padding:5px}.owner-bottom-nav button.active{color:var(--ui-accent);font-weight:600}.owner-bottom-nav button.active svg{background:var(--ui-accent);color:#fff}.owner-guest-main{padding-bottom:96px}}@media (width<=760px){.owner-finance-summary{grid-template-columns:1fr;gap:6px;margin-bottom:10px}.owner-finance-summary>div{justify-content:space-between;align-items:baseline;gap:10px;padding:8px 12px;display:flex}.owner-finance-summary small{font-size:12px!important}.owner-finance-summary strong{white-space:nowrap;margin-top:0;font-size:15px}.owner-labor-page .attendance-summary{gap:12px;margin:12px 0 10px;padding:12px 14px}.owner-labor-page .table-wrap{margin-top:0}.owner-labor-page .attendance-summary>div span{font-size:11px}.owner-labor-page .attendance-summary>div strong{font-size:14px}.owner-labor-page .attendance-summary .trade-summary strong{font-size:12px}}.wechat-login-button{justify-content:center;align-items:center;gap:9px;width:100%;margin-top:18px;display:flex}.wechat-login-button svg{width:18px;height:18px}.login-divider{color:var(--text-muted);white-space:nowrap;align-items:center;gap:12px;margin:23px 0 4px;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.login-status{min-height:20px;margin-bottom:0;font-size:13px}:root{--ui-bg:#f4f9ff;--ui-surface:#fff;--ui-soft:#edf5ff;--ui-sidebar:#e9f3ff;--ui-ink:#152540;--ui-muted:#647c9c;--ui-line:#dce8f7;--ui-accent:#2583f8;--ui-on-accent:#fff;--ui-track:#e5edf7;--ui-hover:#e0eeff;--ink:var(--ui-ink);--text-muted:var(--ui-muted);--teal:var(--ui-accent);--line:var(--ui-line);--wash:var(--ui-bg);--pale:var(--ui-soft);--background:var(--ui-bg);--foreground:var(--ui-ink);--card:var(--ui-surface);--card-foreground:var(--ui-ink);--popover:var(--ui-surface);--popover-foreground:var(--ui-ink);--primary:var(--ui-accent);--primary-foreground:var(--ui-on-accent);--secondary:var(--ui-soft);--secondary-foreground:var(--ui-ink);--muted:var(--ui-soft);--muted-foreground:var(--ui-muted);--accent:var(--ui-hover);--accent-foreground:var(--ui-ink);--border:var(--ui-line);--input:var(--ui-line);--ring:var(--ui-accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-ui-theme=dark]{--ui-bg:#0c0d10;--ui-surface:#15171b;--ui-soft:#1e2127;--ui-sidebar:#111317;--ui-ink:#f0f2f6;--ui-muted:#a1aaba;--ui-line:#30343c;--ui-accent:#78aeff;--ui-on-accent:#101724;--ui-track:#2a303b;--ui-hover:#252f40;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:var(--ui-ink);background:var(--ui-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}.production-app,.production-workspace,.production-content{background:var(--ui-bg);color:var(--ui-ink)}.production-sidebar{background:var(--ui-sidebar);color:var(--ui-ink);border-right:1px solid var(--ui-line)}.production-brand{padding:22px 20px}.production-brand img{filter:brightness(0)saturate();opacity:.8;max-width:170px}[data-ui-theme=dark] .production-brand img{filter:none;opacity:1}.production-sidebar .navitem{color:var(--ui-muted);border-radius:10px;gap:12px;width:calc(100% - 20px);min-height:46px;margin:3px 10px;font-size:14px}.production-sidebar .navitem svg{stroke-width:1.7px;width:19px;height:19px}.production-sidebar .navitem:hover,.production-sidebar .navitem.active{background:var(--ui-hover);color:var(--ui-accent)}.production-sidebar .navcaption,.production-sidebar .account small{color:var(--ui-muted)}.production-sidebar footer,.production-sidebar .account{border-color:var(--ui-line);color:var(--ui-ink)}.production-sidebar .logout{color:var(--ui-muted)}.production-topbar{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line);gap:14px}.production-content{max-width:1510px}.project-heading h1{letter-spacing:-.6px;font-size:clamp(24px,2.3vw,34px);font-weight:700}.ui-theme-toggle{border:1px solid var(--ui-line);background:var(--ui-surface);width:38px;height:38px;color:var(--ui-muted);cursor:pointer;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ui-theme-toggle:hover{background:var(--ui-hover);color:var(--ui-accent)}.production-app :is(.panel,.project-card,.empty-card,.capacity-card,.settings-card),.owner-home .panel{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line);box-shadow:none;border-radius:14px}.workspace-card{color:var(--ui-ink);background:0 0}.production-app h2,.owner-home h2{letter-spacing:-.3px;color:var(--ui-ink);font-size:19px}:is(.production-app,.appdialog,.modal,.owner-home) :is(.muted,.subtext,.empty),.project-heading>div>span{color:var(--ui-muted)}:is(.production-app,.appdialog,.modal,.owner-home) .link{color:var(--ui-accent)}:is(.production-app,.appdialog,.modal) :is(input,select,textarea){color:var(--ui-ink);background:var(--ui-surface);border-color:var(--ui-line);border-radius:9px}:is(input,select,textarea)::placeholder{color:var(--ui-muted)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px}.production-primary,.create-button,.production-app .button:not(.secondary):not(.danger),.appdialog .button:not(.secondary):not(.danger){background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent);border-radius:9px}.production-app .button.secondary,.appdialog .button.secondary{background:var(--ui-surface);color:var(--ui-accent);border-color:var(--ui-line)}.production-app th{background:var(--ui-soft);color:var(--ui-muted);border-color:var(--ui-line)}.production-app td{border-color:var(--ui-line)}.production-app tbody tr:hover{background:var(--ui-soft)}.production-app :is(.purchase-summary,.payable-summary,.production-totals)>div,.reserve-needs>button{background:var(--ui-soft);border-color:var(--ui-line);color:var(--ui-ink);border-radius:10px}.production-app :is(.purchase-summary,.payable-summary,.production-totals) :is(span,small),.reserve-needs small{color:var(--ui-muted)}.appdialog,.modal,.mobile-action-sheet{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line);border-radius:16px}.appdialog :is(label,h2),.modal :is(label,h2){color:var(--ui-ink)}.payable-file-zone,.production-file-zone{background:var(--ui-soft);border-color:var(--ui-line);color:var(--ui-muted)}.owner-finances{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.owner-finances>.panel{flex-direction:column;min-width:0;padding:24px;display:flex}.owner-finances>.panel:first-child .owner-category{flex-direction:column;flex:1;justify-content:center;min-height:59px;margin-top:8px;display:flex}.owner-money-row{gap:16px}.owner-number span,.owner-legend small,.owner-balance small{color:var(--ui-muted)}.owner-number strong{font-variant-numeric:tabular-nums;color:var(--ui-ink);font-size:clamp(15px,1.35vw,20px)}.dash-track,.owner-home [data-slot=progress]{background:var(--ui-track)}.dash-track>button,.owner-home [data-slot=progress-indicator],.owner-timeline b{background:var(--ui-accent)}.dash-track>button.due,.owner-double .plan [data-slot=progress-indicator],.owner-timeline i{background:#bed9fa}[data-ui-theme=dark] .dash-track>button.due,[data-ui-theme=dark] .owner-timeline i{background:#344964}.owner-gantt-row,.owner-gantt-head,.owner-contract,.owner-balance,.owner-files button{border-color:var(--ui-line);color:var(--ui-ink)}.owner-gantt-row small,.owner-gantt-head{color:var(--ui-muted)}.owner-reserve-chart{grid-template-columns:minmax(145px,.9fr) minmax(150px,1.1fr);gap:20px;margin:20px 0;display:grid}.owner-legend{order:0;gap:12px}.reserve-columns{border-bottom:1px solid var(--ui-line);background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--ui-line) calc(25% - 1px),var(--ui-line) 25%);order:1;align-items:stretch;gap:12px;height:180px;padding:0 7px;display:flex}.reserve-column{cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:flex-end;align-items:stretch;min-width:0;padding:0;display:flex;position:relative}.reserve-column i{border-radius:5px 5px 0 0;min-height:0;display:block}.reserve-column span{color:var(--ui-muted);text-align:center;font-variant-numeric:tabular-nums;margin-bottom:5px;font-size:11px}.reserve-used{text-align:left;width:100%;color:var(--ui-ink);justify-content:space-between;align-items:center;gap:12px;padding:0 0 15px;display:flex}.reserve-used small{color:var(--ui-muted)}.owner-balance{border-color:var(--ui-line);margin-top:auto}.owner-files button{background:var(--ui-soft)}.production-login{background:radial-gradient(ellipse at 10% 0%,#dfeeff,transparent 65%),var(--ui-bg);color:var(--ui-ink);position:relative}[data-ui-theme=dark] .production-login{background:radial-gradient(ellipse at 10% 0%,#141c30,transparent 60%),radial-gradient(ellipse at 100% 100%,#21132c,transparent 60%),var(--ui-bg)}.production-login>section{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:22px;position:relative;box-shadow:0 16px 60px #1428400a}.production-login .ui-theme-toggle{position:absolute;top:20px;right:20px}.production-login :is(h1,label){color:var(--ui-ink)}.production-login p{color:var(--ui-muted)}.production-login input,.production-code button{background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}.mobile-bottom-nav,.mobile-action-sheet{background:var(--ui-surface);border-color:var(--ui-line);color:var(--ui-ink)}.mobile-bottom-nav button{color:var(--ui-muted)}.mobile-bottom-nav button.active{color:var(--ui-accent)}@media (width<=1100px){.owner-reserve-chart{grid-template-columns:1fr 1fr;gap:12px}.owner-finances>.panel{padding:18px}.reserve-columns{gap:7px}}@media (width<=750px){.owner-finances{grid-template-columns:1fr}.owner-reserve-chart{grid-template-columns:minmax(135px,1fr) minmax(140px,1fr)}.production-topbar{gap:8px}.production-topbar .ui-theme-toggle{width:32px;height:32px}.owner-money-row{gap:10px}.owner-finances>.panel:first-child .owner-category{min-height:58px}.owner-number strong{font-size:16px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.production-app,.production-login{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}:is(.workspace-card:not(:has(.owner-home)) button,.production-login button){background:var(--ui-surface);color:var(--ui-accent);border-color:var(--ui-line)}.production-login .production-primary,.workspace-card form>button{background:var(--ui-accent);color:var(--ui-on-accent)}.production-login .wechat-login-button{color:#fff!important;background:#07c160!important;border-color:#07c160!important}.production-login .wechat-login-button:hover{background:#06ad56!important;border-color:#06ad56!important}.production-topbar .preview-switch select{background:var(--ui-surface)!important}.production-app .purchase-ledger-table :is(th,td):nth-child(-n+4){background:var(--ui-surface)}.production-app .purchase-ledger-table thead th:nth-child(-n+4){background:var(--ui-soft)!important}.production-app .purchase-ledger-table tbody tr:hover td{background:var(--ui-soft)}.production-app :is(.production-tablewrap,.capacity-summary>div,.capacity-notes>div,.capacity-update,.payable-table-wrap tr,.purchase-ledger-table tbody tr){background:var(--ui-surface);border-color:var(--ui-line)}.appdialog .payable-file-zone,.appdialog .payable-form-actions,.appdialog .business-form-actions,.appdialog .task-form-actions{background:var(--ui-surface)!important}.appdialog>[data-slot=dialog-close],.production-app .nav-trigger{color:var(--ui-ink);background:var(--ui-soft)!important}.mobile-action-grid button,.mobile-action-sheet header button{background:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}.production-app .purchase-ledger-table thead :is(button,select){color:var(--ui-ink);background:var(--ui-surface)!important}.production-login .ui-theme-toggle{padding:0}[data-ui-theme=dark] .cloud-status{color:#9ad6b9;background:#1c3028}@media (width<=400px){.owner-reserve-chart{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.reserve-columns{gap:5px}.owner-legend button{font-size:11px}}.workspace-project-picker{background:var(--ui-soft);border:1px solid var(--ui-line);border-radius:10px;align-items:center;gap:8px;min-width:0;max-width:340px;padding:8px 12px;display:flex}.workspace-project-picker svg{flex-shrink:0}.workspace-project-picker select{width:100%;min-width:0;color:var(--ui-ink);text-overflow:ellipsis;background:0 0;border:0;padding:4px 0;font-size:13px}.workspace-search{background:var(--ui-soft);border:1px solid var(--ui-line);min-width:150px;max-width:300px;color:var(--ui-muted);border-radius:24px;align-items:center;gap:10px;padding:9px 14px;display:flex;position:relative}.workspace-search input{outline:none;width:100%;min-width:0;font-size:13px;background:0 0!important;border:0!important;padding:0!important}.workspace-search-results,.workspace-quick-menu{z-index:65;border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 40px #15254020}.production-topbar .workspace-search-results button,.workspace-quick-menu button{text-align:left;width:100%;color:var(--ui-ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:11px 12px;display:block}.workspace-search-results button:hover,.workspace-quick-menu button:hover{background:var(--ui-hover)}.workspace-search-results p{padding:10px;font-size:13px}.workspace-user{white-space:nowrap;align-items:center;gap:10px;font-size:13px;display:flex}.workspace-user>span{background:var(--ui-accent);width:36px;height:36px;color:var(--ui-on-accent);border-radius:50%;place-items:center;font-size:16px;display:grid}.workspace-user strong{text-overflow:ellipsis;max-width:90px;font-weight:500;overflow:hidden}.workspace-notifications{place-items:center;padding:8px;display:grid;color:var(--ui-muted)!important}.production-topbar{flex-wrap:wrap;height:auto;min-height:76px;padding-top:10px;padding-bottom:10px}.production-topbar .preview-switch{margin-left:auto}.production-topbar .cloud-status{padding:6px 8px;font-size:11px}.workspace-breadcrumb{font-size:12px;margin-bottom:12px!important}.workspace-heading-actions{flex-shrink:0;align-items:center;gap:18px;display:flex}.workspace-quick{position:relative}.workspace-quick .create-button{align-items:center;gap:10px;display:flex}.workspace-quick-menu{z-index:66;min-width:170px;left:auto}.workspace-menu-dismiss{z-index:64;background:0 0;border:0;position:fixed;inset:0}.overview-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.overview-summary-owner{grid-template-columns:1fr}.overview-summary-grid>.panel{min-width:0;margin:0;padding:24px}.overview-summary-grid .row .link{white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.overview-progress-body{grid-template-columns:minmax(140px,.85fr) minmax(0,1.15fr);align-items:center;gap:20px;margin:28px 0;display:grid}.overview-ring{aspect-ratio:1;cursor:pointer;width:100%;max-width:190px;color:var(--ui-ink);background:0 0;border:0;margin:auto;padding:0;position:relative}.overview-ring svg{fill:none;width:100%;height:100%;stroke:var(--ui-track);stroke-width:13px}.overview-ring .overview-ring-value{stroke:var(--ui-accent);stroke-linecap:round}.overview-ring>span{flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex;position:absolute;inset:0}.overview-ring strong{letter-spacing:-1px;font-size:32px}.overview-ring small,.overview-progress-details small,.overview-progress-details span{color:var(--ui-muted);font-size:12px}.overview-progress-details{border-left:1px solid var(--ui-line);min-width:0;padding-left:20px}.overview-plan-value{flex-direction:column;gap:5px;padding-bottom:18px;display:flex}.overview-plan-value strong{font-size:30px}.overview-stage-grid{border-top:1px solid var(--ui-line);grid-template-columns:1fr 1fr;gap:12px;padding-top:16px;display:grid}.overview-stage-grid>div{flex-direction:column;gap:7px;min-width:0;display:flex}.overview-stage-grid strong{overflow-wrap:anywhere;font-size:13px;line-height:1.6}.overview-milestones{gap:10px;margin:12px 0 16px;display:flex}.overview-milestones button{min-width:0;color:var(--ui-ink);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:9px;padding:0;display:flex;position:relative}.overview-milestones button:not(:last-child):after{content:"";background:var(--ui-line);width:calc(100% - 16px);height:2px;position:absolute;top:9px;left:calc(50% + 13px)}.milestone-dot{z-index:1;background:var(--ui-track);width:19px;height:19px;color:var(--ui-on-accent);border-radius:50%;place-items:center;display:grid;position:relative}.milestone-dot.done{background:var(--ui-accent)}.milestone-dot.current{background:var(--ui-accent);box-shadow:inset 0 0 0 4px var(--ui-surface);border:2px solid var(--ui-accent)}.overview-milestones strong{font-size:12px;font-weight:500;line-height:1.6}.overview-milestones small{color:var(--ui-muted);font-size:11px}.overview-todo-card{flex-direction:column;display:flex}.overview-todo-card h2 small{color:var(--ui-muted);margin-left:6px;font-size:12px;font-weight:400}.overview-todo-list{flex:1;margin:20px 0 12px}.overview-todo-row{text-align:left;border:0;border-top:1px solid var(--ui-line);width:100%;color:var(--ui-ink);cursor:pointer;background:0 0;align-items:flex-start;gap:12px;padding:18px 0;display:flex}.overview-todo-row>svg{color:var(--ui-muted);flex-shrink:0;margin-top:2px}.overview-todo-row>i{background:var(--ui-accent);border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:7px}.overview-todo-row>i.urgent{background:#f07855}.overview-todo-row>i.important{background:#edaa29}.overview-todo-row>span{flex:1;min-width:0}.overview-todo-row strong{font-size:14px;line-height:1.6}.overview-todo-row small{color:var(--ui-muted);margin-top:6px;font-size:12px;display:block}.overview-todo-row time{color:var(--ui-muted);max-width:95px;font-size:11px}.overview-todo-empty{min-height:180px;color:var(--ui-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.overview-todo-empty span{font-size:13px}@media (width>=901px){.production-sidebar{width:212px}.production-workspace{margin-left:212px}.production-content{padding:30px 24px}.production-topbar{padding-left:24px;padding-right:24px}.production-brand{height:105px}}@media (width<=1180px){.workspace-search{max-width:190px}.workspace-user strong{display:none}.overview-progress-body{grid-template-columns:140px minmax(0,1fr);gap:12px}.overview-progress-details{padding-left:12px}.overview-stage-grid{grid-template-columns:1fr}.overview-summary-grid>.panel{padding:20px}}@media (width<=800px){.overview-summary-grid{grid-template-columns:1fr}.overview-progress-body{grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr)}.overview-stage-grid{grid-template-columns:1fr 1fr}.workspace-search{display:none}.workspace-project-picker{flex:1;max-width:calc(100% - 80px)}.production-topbar .topbar-spacer,.workspace-user{display:none}.workspace-heading-actions{flex-wrap:wrap;gap:10px}.workspace-heading-actions>.link{font-size:12px}.workspace-quick .create-button{padding:10px 12px}}@media (width<=440px){.overview-summary-grid>.panel{padding:18px 14px}.overview-progress-body{grid-template-columns:125px minmax(0,1fr);gap:10px}.overview-stage-grid{grid-template-columns:1fr}.overview-ring strong{font-size:27px}.overview-milestones{padding-bottom:8px;overflow-x:auto}.overview-milestones button{min-width:76px}.project-heading{flex-wrap:wrap}.overview-todo-row{gap:8px}.overview-todo-row time{max-width:76px}}.overview-live-details>.owner-home>.owner-finances{order:-1}.production-metal-logo{max-width:100%;line-height:0;display:inline-block;position:relative}.production-metal-logo img{width:170px;height:auto;display:block}@supports ((-webkit-mask-image:url("/zhishe-logo-white.png")) or (mask-image:url("/zhishe-logo-white.png"))){.production-metal-logo img{opacity:0}.production-metal-logo:after{content:"";background:linear-gradient(155deg,#26394c 0%,#657b90 22%,#a5b3c1 37%,#40566b 47%,#25394e 55%,#8c9eae 72%,#344b60 100%);position:absolute;inset:0;-webkit-mask:url(/zhishe-logo-white.png) 50%/contain no-repeat;mask:url(/zhishe-logo-white.png) 50%/contain no-repeat}[data-ui-theme=dark] .production-metal-logo img{opacity:0}[data-ui-theme=dark] .production-metal-logo:after{background:linear-gradient(155deg,#96a6b7 0%,#e2e9ef 23%,#fff 37%,#9baabb 48%,#c5d0dc 58%,#f3f7fa 74%,#8598ab 100%)}}.production-login .login-metal-logo{margin-bottom:25px}.production-login .login-metal-logo img{background:0 0;border-radius:0;width:180px;margin:0;padding:0}.projectcard .project-pin{z-index:2;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-muted);letter-spacing:.6px;pointer-events:auto;border-radius:8px;align-items:center;gap:4px;padding:6px 9px;font-size:11px;font-weight:700;display:inline-flex;position:relative}.projectcard .project-pin:hover,.projectcard .project-pin[aria-pressed=true]{background:var(--ui-hover);color:var(--ui-accent);border-color:var(--ui-accent)}.workspace-select-trigger{border:1px solid var(--ui-line);background:var(--ui-surface);min-width:0;min-height:40px;color:var(--ui-ink);font:inherit;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:9px 12px;font-size:13px;display:flex}.workspace-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-select-trigger:focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px}.workspace-project-picker{gap:4px;padding:0 0 0 12px}.workspace-project-picker .workspace-select-trigger{background:0 0;border:0;max-width:300px}.production-topbar .preview-switch{align-items:center;gap:10px;display:flex}.preview-switch>span{color:var(--ui-muted);font-size:12px}.workspace-select-popup{box-sizing:border-box;min-width:var(--anchor-width);max-width:calc(100vw - 24px);max-height:min(420px,var(--available-height));background:var(--ui-surface);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:14px;padding:7px;font-family:inherit;overflow:auto;box-shadow:0 12px 36px #15254026}.workspace-select-caption{color:var(--ui-muted);padding:6px 10px 9px;font-size:11px}.workspace-select-option{cursor:pointer;border-radius:8px;outline:none;justify-content:space-between;align-items:center;gap:20px;margin:2px 0;padding:11px 12px;font-size:13px;display:flex}.workspace-select-option[data-highlighted]{background:var(--ui-hover)}.workspace-select-option[data-selected]{background:var(--ui-soft);color:var(--ui-accent)}.production-login .login-metal-logo{width:180px;margin:0 0 25px;display:block}.production-login .ui-theme-toggle svg{flex:none;width:22px;min-width:22px;height:22px;margin:0;padding:0;display:block}.reimbursement-status{white-space:nowrap;background:var(--ui-soft);color:var(--ui-muted);border-radius:5px;align-items:center;gap:4px;margin-top:4px;padding:2px 6px;font-size:11px;font-weight:500;line-height:1.6;display:inline-flex}.reimbursement-status.pending{color:#9b5900;background:#fff3da}.reimbursement-status.partial{color:#2164b6;background:#eaf2ff}.reimbursement-status.done{color:#187753;background:#e8f6ee}.reimbursement-status>span{font-size:10px}.reimbursement-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.reimbursement-heading .reimbursement-status{margin-top:0}.reimbursement-purchase-date{color:var(--ui-muted);font-size:13px;font-weight:400}[data-ui-theme=dark] .reimbursement-status.pending{color:#f0bf69;background:#392d1a}[data-ui-theme=dark] .reimbursement-status.partial{color:#9cc3ff;background:#1d304b}[data-ui-theme=dark] .reimbursement-status.done{color:#80d5ad;background:#19392d}.purchase-ledger-table .purchase-item-search{box-sizing:border-box;border:1px solid var(--ui-line);background:var(--ui-surface);width:100%;min-width:120px;max-width:220px;height:36px;color:var(--ui-ink);font:inherit;border-radius:8px;padding:7px 10px;font-size:13px}.purchase-item-search::placeholder{color:var(--ui-muted)}.purchase-item-search:focus{outline:2px solid var(--ui-accent);outline-offset:1px}.schedule-period-list,.finance-navigation [data-slot=tabs-list]{background:var(--ui-soft)!important;border-color:var(--ui-line)!important}.schedule-period-list [data-slot=tabs-trigger]{color:var(--ui-muted)!important}.schedule-period-list [data-slot=tabs-trigger][data-active]{background:var(--ui-surface)!important;color:var(--ui-accent)!important;box-shadow:0 1px 5px #15254014!important}.finance-navigation [data-slot=tabs-trigger],.settings-tabs [data-slot=tabs-trigger]{color:var(--ui-muted);background:var(--ui-surface);border-color:var(--ui-line)}.finance-navigation [data-slot=tabs-trigger][data-active],.settings-tabs [data-active]{background:var(--ui-accent)!important;color:var(--ui-on-accent)!important}.company-preview .cash-group,.company-preview .public-cash-preview{background:var(--ui-soft);border-color:var(--ui-line);color:var(--ui-ink)}.company-preview .cash-group strong,.company-preview .cash-group span,.company-preview .public-cash-preview>span{color:var(--ui-ink)}.company-preview .cash-group:hover,.company-preview .cash-group[aria-expanded=true]{background:var(--ui-hover);border-color:var(--ui-accent)}.projectcard:hover{border-color:var(--ui-accent)}.production-content .notice{background:var(--ui-surface);border:1px solid var(--ui-line);box-shadow:0 8px 28px #15254020;color:var(--ui-ink)!important}[data-slot=select-content]{background:var(--ui-surface);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:12px;padding:6px;box-shadow:0 10px 30px #15254020}[data-slot=select-item]{border-radius:7px;align-items:center;gap:8px;padding:9px 12px;display:flex}[data-slot=select-item][data-highlighted],[data-slot=select-item]:focus{background:var(--ui-hover)!important;color:var(--ui-ink)!important}[data-slot=select-item][data-selected]{background:var(--ui-soft)!important;color:var(--ui-accent)!important}.task-pick{flex-direction:column;gap:7px;min-width:190px;display:flex}.task-pick .workspace-select-trigger{width:100%;min-height:42px}.workspace-select-trigger:disabled{opacity:.55;cursor:not-allowed}.reserve-remaining-summary{grid-template-columns:minmax(130px,.9fr) minmax(0,1.1fr);align-items:center;gap:20px;margin:18px 0;display:grid}.reserve-remaining-ring{aspect-ratio:1;width:160px;max-width:100%;color:var(--ui-ink);background:0 0;border:0;justify-self:center;padding:0;position:relative}.reserve-remaining-ring svg{width:100%;height:100%;display:block}.reserve-remaining-ring circle{fill:none;stroke-width:12px}.reserve-ring-track{stroke:var(--ui-track)}.reserve-ring-value{stroke:var(--ui-accent);stroke-linecap:round}.reserve-remaining-ring>span{flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.reserve-remaining-ring strong{font-size:28px;line-height:1.1}.reserve-remaining-ring small{color:var(--ui-muted);font-size:12px}.reserve-remaining-amounts{gap:12px;display:grid}.reserve-remaining-amounts button{text-align:left;color:var(--ui-ink);background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:3px;padding:0;display:flex}.reserve-remaining-amounts small{color:var(--ui-muted);font-size:12px}.reserve-remaining-amounts strong{font-size:21px}.reserve-remaining-amounts b{font-size:14px;font-weight:500}.reserve-breakdown{border-top:1px solid var(--ui-line);margin-bottom:12px;padding-top:12px}.reserve-breakdown>small{font-size:11px}.reserve-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;margin-top:10px;display:grid}.reserve-breakdown-grid button{text-align:left;color:var(--ui-ink);background:0 0;border:0;align-items:flex-start;gap:7px;padding:0;font-size:12px;display:flex}.reserve-breakdown-grid i{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.reserve-breakdown-grid small{color:var(--ui-muted);margin-top:2px;font-size:11px;display:block}.reserve-negative{color:#c55137!important}[data-ui-theme=dark] .reserve-negative{color:#ffac95!important}@media (width<=420px){.reserve-remaining-summary{grid-template-columns:125px minmax(0,1fr);gap:12px}.reserve-remaining-amounts strong{font-size:18px}.reserve-remaining-ring strong{font-size:24px}}.overview-activity-heading{gap:10px;margin-top:12px}.overview-activity-heading>strong{font-size:13px}.overview-activity-heading .link{font-size:12px}.overview-activities button:not(:last-child):after{display:none}.overview-activities .milestone-dot.done{color:#fff;background:#269c72}.overview-activities .milestone-dot.upcoming{border:2px solid var(--ui-muted);background:0 0}.overview-activities button{gap:6px}.overview-activities .activity-overdue{color:#c55137}.activity-note{font-size:11px}[data-ui-theme=dark] .overview-activities .activity-overdue{color:#ffac95}.reserve-remaining-amounts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px}.reserve-remaining-amounts>button:first-child{grid-column:1/-1}.reserve-remaining-amounts>button:nth-child(3){grid-area:3/1}.reserve-remaining-amounts>button:nth-child(4){grid-area:2/2}.reserve-remaining-amounts>button:nth-child(5){grid-area:3/2}.reserve-receipt-totals{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.reserve-receipt-totals>div{background:var(--ui-soft);border-radius:10px;padding:16px}.reserve-receipt-totals small{color:var(--ui-muted);margin-bottom:8px;display:block}.reserve-receipt-totals strong{font-size:19px}.reserve-receipts .row{flex-wrap:wrap;gap:12px}.reserve-receipts h3{margin-top:20px}.reserve-receipts td{vertical-align:top}@media (width<=700px){.reserve-receipt-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}.overview-activities button:not(:last-child):after{content:"";background:var(--ui-line);pointer-events:none;border-radius:2px;width:calc(100% - 20px);height:2px;display:block;position:absolute;top:9px;left:calc(50% + 15px)}.overview-ring,.reserve-remaining-ring{transition:transform .2s}.overview-ring:hover,.reserve-remaining-ring:hover{transform:scale(1.025)}@media (prefers-reduced-motion:reduce){.overview-ring,.reserve-remaining-ring{transition:none;transform:none!important}}.reserve-month-controls{align-items:center;gap:10px;margin-left:auto;display:flex}.reserve-month-controls .workspace-select-trigger{min-width:155px}.receipt-existing-proof{justify-content:space-between;align-items:center;gap:12px;margin:8px 0;display:flex}.receipt-delete-area{border-top:1px solid var(--ui-line);margin-top:18px;padding-top:18px}.receipt-delete-area .button{color:#c55137;border-color:#e9b7aa}.purchase-ledger-table.purchase-compact{table-layout:fixed!important;width:100%!important;min-width:0!important}.purchase-compact :is(th,td){overflow-wrap:anywhere;white-space:normal!important;min-width:0!important;max-width:none!important;padding:12px 10px!important}.purchase-compact :is(th,td):nth-child(-n+4){box-shadow:none!important;position:relative!important;left:auto!important}.purchase-compact thead th{top:0;position:sticky!important}.purchase-compact :is(th,td):first-child{width:10%}.purchase-compact :is(th,td):nth-child(4){width:18%}.purchase-compact :is(th,td):nth-child(5){width:25%}.purchase-compact :is(th,td):nth-child(6){width:13%}.purchase-compact thead :is(select,input){width:100%;max-width:100%;min-width:0!important;font-size:12px!important}.purchase-source-status{justify-content:space-between;align-items:center;gap:8px;display:flex}.purchase-source-status>div:first-child{min-width:0}.purchase-status-stack{flex-direction:column;flex-shrink:0;gap:5px;display:flex}.purchase-state{white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;min-height:25px;padding:3px 8px;font-size:11px;line-height:1.4;display:inline-flex}.purchase-state.review{color:var(--ui-accent);background:var(--ui-soft);border-color:var(--ui-line)}.purchase-state.pending{color:#9b6505;background:#fff4db}.purchase-state.done{color:#16846b;background:#e8f6f0}.purchase-state.neutral{color:var(--ui-muted);background:var(--ui-soft)}button.purchase-state:not(:disabled):hover{filter:brightness(.96);border-color:currentColor}button.purchase-state:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}.purchase-state:disabled{cursor:default;opacity:.65}.purchase-compact td:nth-child(6)>.link{min-height:30px;font-size:12px;display:block;margin:0 0 6px!important;padding:6px 9px!important}.purchase-rebate{margin-top:6px;font-size:11px}.purchase-rebate .link:before{content:"返点 "}.purchase-proof-grid{flex-wrap:wrap;gap:12px;margin:12px 0;display:flex}.purchase-filter-toolbar{flex-wrap:wrap}.purchase-filter-toolbar select{border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-ink);border-radius:8px;padding:8px 12px}@media (width<=1100px) and (width>=761px){.purchase-source-status{flex-direction:column;align-items:flex-start}.purchase-compact :is(th,td){font-size:12px;padding:10px 6px!important}}@media (width<=760px){.purchase-compact thead th:nth-child(3){grid-column:1/-1;display:block!important}.purchase-compact thead th:nth-child(6){display:none!important}.purchase-compact tbody td:nth-child(5):before{content:"来源 / 状态"}.purchase-compact tbody td:nth-child(6):before{content:"操作"}.purchase-compact tbody td:nth-child(6)>.link,.purchase-compact .purchase-rebate{grid-column:2}.purchase-source-status{width:100%}}.purchase-compact :is(th,td):nth-child(2){width:12%}.purchase-compact :is(th,td):nth-child(3){width:22%}@media (width<=760px){.purchase-compact tbody td:nth-child(4) .subtext{grid-column:2}}.production-app .purchase-source-status{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:6px 10px}.production-app .purchase-status-stack{flex-flow:row;align-items:center;gap:4px}.production-app .workspace-card .purchase-state{width:auto!important;min-width:0!important;height:22px!important;min-height:22px!important;box-shadow:none!important;border:0!important;border-radius:5px!important;margin:0!important;padding:2px 6px!important;font-size:11px!important;font-weight:500!important;line-height:18px!important;display:inline-flex!important}.production-app .workspace-card .purchase-state.review{color:#2164b6!important;background:#eaf2ff!important}.production-app .workspace-card .purchase-state.pending{color:#9b5900!important;background:#fff3da!important}.production-app .workspace-card .purchase-state.done{color:#187753!important;background:#e8f6ee!important}.production-app .workspace-card .purchase-state.neutral{background:var(--ui-soft)!important;color:var(--ui-muted)!important}.production-app .workspace-card .purchase-filter-toolbar{flex-wrap:wrap;align-items:center;gap:10px;flex-direction:row!important;display:flex!important}.production-app .workspace-card .purchase-filter-toolbar select{min-width:115px;font-size:13px;flex:none!important;width:auto!important;margin:0!important;padding:8px 12px!important}.production-app .purchase-compact td:nth-child(6){white-space:nowrap!important}.production-app .purchase-compact td:nth-child(6)>.link,.production-app .purchase-compact .purchase-rebate{vertical-align:middle;margin:0 5px 0 0!important;display:inline-block!important}.production-app .purchase-compact td:nth-child(6) .link{min-height:30px!important;padding:6px 8px!important;font-size:12px!important}.production-app .purchase-compact :is(th,td):first-child,.production-app .purchase-compact :is(th,td):nth-child(2){width:10%}.production-app .purchase-compact :is(th,td):nth-child(3){width:17%}.production-app .purchase-compact :is(th,td):nth-child(4){width:16%}[data-ui-theme=dark] .production-app .workspace-card .purchase-state.review{color:#9cc3ff!important;background:#1d304b!important}[data-ui-theme=dark] .production-app .workspace-card .purchase-state.pending{color:#f0bf69!important;background:#392d1a!important}[data-ui-theme=dark] .production-app .workspace-card .purchase-state.done{color:#80d5ad!important;background:#19392d!important}@media (width<=760px){.production-app .purchase-compact tbody td:nth-child(6){flex-wrap:wrap;gap:5px;display:flex!important}.production-app .purchase-compact tbody td:nth-child(6):before{flex-basis:100%}}.production-app .purchase-compact :is(th,td):nth-child(5){width:25%}.production-app .purchase-compact :is(th,td):nth-child(6){width:22%}.production-app .workspace-card .purchase-state.invoice-pending{color:#7850b5!important;background:#f0eaff!important}[data-ui-theme=dark] .production-app .workspace-card .purchase-state.invoice-pending{color:#c5a5f1!important;background:#342544!important}.production-app .workspace-card button.purchase-state:not(:disabled):before{content:"";background:currentColor;border-radius:50%;flex:0 0 4px;width:4px;height:4px;margin-right:4px;display:inline-block}.production-app .workspace-card .purchase-filter-toolbar .workspace-select-trigger{width:125px!important;min-width:0!important;height:36px!important;min-height:36px!important;margin:0!important;padding:7px 10px!important;font-size:13px!important}.production-app .workspace-card .purchase-compact thead .workspace-select-trigger{justify-content:space-between;align-items:center;gap:5px;width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;margin:0!important;padding:7px 9px!important;font-size:12px!important;display:flex!important}.purchase-compact .workspace-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workspace-select-popup{max-height:min(420px,70vh);overflow-y:auto}button.window-close-icon,.production-app button.modal-close{cursor:pointer;justify-content:center;align-items:center;width:32px!important;height:32px!important;min-height:32px!important;box-shadow:none!important;color:var(--ui-ink,#17344b)!important;background:0 0!important;border:0!important;padding:6px!important;display:inline-flex!important}button.window-close-icon{z-index:2;position:absolute;top:14px;right:14px}button.window-close-icon svg,.production-app button.modal-close svg{flex:none;display:block;width:20px!important;height:20px!important}button.window-close-icon:hover,.production-app button.modal-close:hover{color:var(--ui-accent,#2785ff)!important;background:0 0!important}button.window-close-icon:focus-visible,.production-app button.modal-close:focus-visible{outline:2px solid var(--ui-accent,#2785ff);outline-offset:2px}[data-slot=dialog-content].appdialog>button.window-close-icon{box-shadow:none!important;background:0 0!important;border:0!important}.appdialog .field>.workspace-select-trigger{justify-content:space-between;align-items:center;gap:8px;min-width:0;border:1px solid var(--ui-line,#d6e2e9)!important;background:var(--ui-surface,#fff)!important;width:100%!important;min-height:42px!important;color:var(--ui-ink,#17344b)!important;border-radius:8px!important;margin:0!important;padding:10px 12px!important;font-size:14px!important;display:flex!important}.appdialog .field>.workspace-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.appdialog .workspace-select-trigger svg{flex-shrink:0;width:16px;height:16px}.production-app .purchase-ledger-wrap{scrollbar-gutter:auto;overscroll-behavior:auto;max-height:none!important;overflow:visible!important}@media (width>=761px){.production-app .purchase-ledger-table.purchase-compact thead th:nth-child(n){z-index:20!important;background:var(--ui-soft)!important;box-shadow:0 1px 0 var(--ui-line)!important;position:sticky!important;top:0!important;left:auto!important}.production-app [data-slot=table-container]:has(>.finance-detail-ledger){overflow:visible!important}.production-app .finance-detail-ledger{border-collapse:separate!important;border-spacing:0!important}.production-app .finance-detail-ledger thead th{z-index:20!important;background:var(--ui-soft)!important;box-shadow:0 1px 0 var(--ui-line)!important;position:sticky!important;top:0!important}}.production-app .purchase-rebate-details{border-top:1px solid var(--ui-line);margin-top:8px;padding-top:16px}.production-app .purchase-rebate-details>summary{cursor:pointer;color:var(--ui-ink);padding:8px 0;font-weight:600}.production-app .purchase-rebate-details>p{margin:10px 0;font-size:13px}.owner-guest-page>header{background:var(--ui-surface);color:var(--ui-ink);border-bottom:1px solid var(--ui-line)}.owner-guest-page>header span{color:var(--ui-muted)}.owner-guest-page>header h1{color:var(--ui-ink)}.owner-guest-page>header p{color:var(--ui-muted)}.owner-guest-page>header div{border-left-color:var(--ui-line)}.owner-guest-page>header button{border-color:var(--ui-line);background:var(--ui-surface);color:var(--ui-muted)}.owner-guest-page>header button:hover{color:var(--ui-accent)}@layer theme{@theme default{--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --color-red-50: oklch(97.1% .013 17.38); --color-red-100: oklch(93.6% .032 17.717); --color-red-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --color-red-500: oklch(63.7% .237 25.331); --color-red-600: oklch(57.7% .245 27.325); --color-red-700: oklch(50.5% .213 27.518); --color-red-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-green-500: oklch(72.3% .219 149.579); --color-green-600: oklch(62.7% .194 149.214); --color-green-700: oklch(52.7% .154 150.069); --color-green-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --color-blue-400: oklch(70.7% .165 254.624); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-blue-700: oklch(48.8% .243 264.376); --color-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --color-gray-50: oklch(98.5% .002 247.839); --color-gray-100: oklch(96.7% .003 264.542); --color-gray-200: oklch(92.8% .006 264.531); --color-gray-300: oklch(87.2% .01 258.338); --color-gray-400: oklch(70.7% .022 261.325); --color-gray-500: oklch(55.1% .027 264.364); --color-gray-600: oklch(44.6% .03 256.802); --color-gray-700: oklch(37.3% .034 259.733); --color-gray-800: oklch(27.8% .033 256.848); --color-gray-900: oklch(21% .034 264.665); --color-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 0); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-mauve-50: oklch(98.5% 0 0); --color-mauve-100: oklch(96% .003 325.6); --color-mauve-200: oklch(92.2% .005 325.62); --color-mauve-300: oklch(86.5% .012 325.68); --color-mauve-400: oklch(71.1% .019 323.02); --color-mauve-500: oklch(54.2% .034 322.5); --color-mauve-600: oklch(43.5% .029 321.78); --color-mauve-700: oklch(36.4% .029 323.89); --color-mauve-800: oklch(26.3% .024 320.12); --color-mauve-900: oklch(21.2% .019 322.12); --color-mauve-950: oklch(14.5% .008 326); --color-olive-50: oklch(98.8% .003 106.5); --color-olive-100: oklch(96.6% .005 106.5); --color-olive-200: oklch(93% .007 106.5); --color-olive-300: oklch(88% .011 106.6); --color-olive-400: oklch(73.7% .021 106.9); --color-olive-500: oklch(58% .031 107.3); --color-olive-600: oklch(46.6% .025 107.3); --color-olive-700: oklch(39.4% .023 107.4); --color-olive-800: oklch(28.6% .016 107.4); --color-olive-900: oklch(22.8% .013 107.4); --color-olive-950: oklch(15.3% .006 107.1); --color-mist-50: oklch(98.7% .002 197.1); --color-mist-100: oklch(96.3% .002 197.1); --color-mist-200: oklch(92.5% .005 214.3); --color-mist-300: oklch(87.2% .007 219.6); --color-mist-400: oklch(72.3% .014 214.4); --color-mist-500: oklch(56% .021 213.5); --color-mist-600: oklch(45% .017 213.2); --color-mist-700: oklch(37.8% .015 216); --color-mist-800: oklch(27.5% .011 216.9); --color-mist-900: oklch(21.8% .008 223.9); --color-mist-950: oklch(14.8% .004 228.8); --color-taupe-50: oklch(98.6% .002 67.8); --color-taupe-100: oklch(96% .002 17.2); --color-taupe-200: oklch(92.2% .005 34.3); --color-taupe-300: oklch(86.8% .007 39.5); --color-taupe-400: oklch(71.4% .014 41.2); --color-taupe-500: oklch(54.7% .021 43.1); --color-taupe-600: oklch(43.8% .017 39.3); --color-taupe-700: oklch(36.7% .016 35.7); --color-taupe-800: oklch(26.8% .011 36.5); --color-taupe-900: oklch(21.4% .009 43.1); --color-taupe-950: oklch(14.7% .004 49.3); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --text-xs: .75rem; --text-xs--line-height: calc(1 / .75); --text-sm: .875rem; --text-sm--line-height: calc(1.25 / .875); --text-base: 1rem; --text-base--line-height: calc(1.5 / 1); --text-lg: 1.125rem; --text-lg--line-height: calc(1.75 / 1.125); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: calc(2.25 / 1.875); --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px #0000000d; --shadow-xs: 0 1px 2px 0 #0000000d; --shadow-sm: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a; --shadow-md: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a; --shadow-lg: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a; --shadow-xl: 0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a; --shadow-2xl: 0 25px 50px -12px #00000040; --inset-shadow-2xs: inset 0 1px #0000000d; --inset-shadow-xs: inset 0 1px 1px #0000000d; --inset-shadow-sm: inset 0 2px 4px #0000000d; --drop-shadow-xs: 0 1px 1px #0000000d; --drop-shadow-sm: 0 1px 2px #00000026; --drop-shadow-md: 0 3px 3px #0000001f; --drop-shadow-lg: 0 4px 4px #00000026; --drop-shadow-xl: 0 9px 7px #0000001a; --drop-shadow-2xl: 0 25px 25px #00000026; --text-shadow-2xs: 0px 1px 0px #00000026; --text-shadow-xs: 0px 1px 1px #0003; --text-shadow-sm: 0px 1px 0px #00000013, 0px 1px 1px #00000013, 0px 2px 2px #00000013; --text-shadow-md: 0px 1px 1px #0000001a, 0px 1px 2px #0000001a, 0px 2px 4px #0000001a; --text-shadow-lg: 0px 1px 2px #0000001a, 0px 3px 2px #0000001a, 0px 4px 8px #0000001a; --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme(--font-sans--font-feature-settings, initial); --default-font-variation-settings: --theme(--font-sans--font-variation-settings, initial); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme(--font-mono--font-feature-settings, initial); --default-mono-font-variation-settings: --theme(--font-mono--font-variation-settings, initial);}@theme default inline reference{--blur: 8px; --shadow: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a; --shadow-inner: inset 0 2px 4px 0 #0000000d; --drop-shadow: 0 1px 2px #0000001a, 0 1px 1px #0000000f; --radius: .25rem; --max-width-prose: 65ch;}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:--theme(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:--theme(--default-font-feature-settings, normal);font-variation-settings:--theme(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:--theme(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:--theme(--default-mono-font-feature-settings, normal);font-variation-settings:--theme(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{@apply border-border outline-ring/50;}body{@apply bg-background text-foreground;}html{@apply font-sans;}}@layer components;@layer utilities{@tailwind utilities;}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-out: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes enter { from { opacity: var(--tw-enter-opacity,1); transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0)); filter: blur(var(--tw-enter-blur,0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity,1); transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0)); filter: blur(var(--tw-exit-blur,0)); }}--animate-accordion-down: accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-accordion-up: accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-down: collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-up: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes accordion-down { from { height: 0; }to { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }}@keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }to { height: 0; }}@keyframes collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms); --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms); animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms); animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms); --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px); --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px); --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)/100); --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)/100); --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%); --tw-enter-scale: calc(--value(ratio)); --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%); --tw-enter-scale: calc(--value(ratio)*-1); --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%); --tw-exit-scale: calc(--value(ratio)); --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%); --tw-exit-scale: calc(--value(ratio)*-1); --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg); --tw-enter-rotate: calc(--value(ratio)*360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg); --tw-enter-rotate: calc(--value(ratio)*-360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg); --tw-exit-rotate: calc(--value(ratio)*360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg); --tw-exit-rotate: calc(--value(ratio)*-360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-y: calc(--value(ratio)*-100%); --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-y: calc(--value(ratio)*100%); --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-y: calc(--value(ratio)*-100%); --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-y: calc(--value(ratio)*100%); --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}@theme inline{@keyframes accordion-down { from { height: 0; } to { height: var(--radix-accordion-content-height,var(--accordion-panel-height,auto)); } } @keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--accordion-panel-height,auto)); } to { height: 0; } }}@custom-variant data-open{&:where([data-state="open"]), &:where([data-open]:not([data-open="false"])) { @slot; }}@custom-variant data-closed{&:where([data-state="closed"]), &:where([data-closed]:not([data-closed="false"])) { @slot; }}@custom-variant data-checked{&:where([data-state="checked"]), &:where([data-checked]:not([data-checked="false"])) { @slot; }}@custom-variant data-unchecked{&:where([data-state="unchecked"]), &:where([data-unchecked]:not([data-unchecked="false"])) { @slot; }}@custom-variant data-selected{&:where([data-selected="true"]) { @slot; }}@custom-variant data-disabled{&:where([data-disabled="true"]), &:where([data-disabled]:not([data-disabled="false"])) { @slot; }}@custom-variant data-active{&:where([data-state="active"]), &:where([data-active]:not([data-active="false"])) { @slot; }}@custom-variant data-horizontal{&:where([data-orientation="horizontal"]) { @slot; }}@custom-variant data-vertical{&:where([data-orientation="vertical"]) { @slot; }}@utility no-scrollbar{-ms-overflow-style: none; scrollbar-width: none; &::-webkit-scrollbar { display: none; }}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@theme inline{@keyframes scroll-fade-reveal-t { from { --scroll-fade-t: 0px; } to { --scroll-fade-t: var(--_scroll-fade-size-t,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); } } @keyframes scroll-fade-reveal-b { from { --scroll-fade-b: var(--_scroll-fade-size-b,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); } to { --scroll-fade-b: 0px; } } @keyframes scroll-fade-reveal-s { from { --scroll-fade-s: 0px; } to { --scroll-fade-s: var(--_scroll-fade-size-s,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); } } @keyframes scroll-fade-reveal-e { from { --scroll-fade-e: var(--_scroll-fade-size-e,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); } to { --scroll-fade-e: 0px; } }}@utility scroll-fade{--_scroll-fade-size-t: var(--scroll-fade-t-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --_scroll-fade-size-b: var(--scroll-fade-b-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-block: linear-gradient(to bottom, transparent 0, #000 var(--scroll-fade-t,0px), #000 calc(100% - var(--scroll-fade-b,0px)), transparent 100%); -webkit-mask-image: var(--scroll-fade-mask,var(--scroll-fade-block)); mask-image: var(--scroll-fade-mask,var(--scroll-fade-block)); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-t 1ms ease-in-out, scroll-fade-reveal-b 1ms ease-in-out; animation-timeline: scroll(self y), scroll(self y); animation-range: 0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)), calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%; animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-t: var(--_scroll-fade-size-t); --scroll-fade-b: var(--_scroll-fade-size-b); }}@utility scroll-fade-y{--_scroll-fade-size-t: var(--scroll-fade-t-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --_scroll-fade-size-b: var(--scroll-fade-b-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-block: linear-gradient(to bottom, transparent 0, #000 var(--scroll-fade-t,0px), #000 calc(100% - var(--scroll-fade-b,0px)), transparent 100%); -webkit-mask-image: var(--scroll-fade-mask,var(--scroll-fade-block)); mask-image: var(--scroll-fade-mask,var(--scroll-fade-block)); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-t 1ms ease-in-out, scroll-fade-reveal-b 1ms ease-in-out; animation-timeline: scroll(self y), scroll(self y); animation-range: 0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)), calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%; animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-t: var(--_scroll-fade-size-t); --scroll-fade-b: var(--_scroll-fade-size-b); }}@utility scroll-fade-x{--_scroll-fade-size-s: var(--scroll-fade-s-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --_scroll-fade-size-e: var(--scroll-fade-e-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-inline: linear-gradient(to right, transparent 0, #000 var(--scroll-fade-s,0px), #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%); &:where([dir="rtl"], [dir="rtl"] *) { --scroll-fade-inline: linear-gradient(to left, transparent 0, #000 var(--scroll-fade-s,0px), #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%); } -webkit-mask-image: var(--scroll-fade-mask,var(--scroll-fade-inline)); mask-image: var(--scroll-fade-mask,var(--scroll-fade-inline)); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-s 1ms ease-in-out, scroll-fade-reveal-e 1ms ease-in-out; animation-timeline: scroll(self inline), scroll(self inline); animation-range: 0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)), calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%; animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-s: var(--_scroll-fade-size-s); --scroll-fade-e: var(--_scroll-fade-size-e); }}@utility scroll-fade-t{--_scroll-fade-size-t: var(--scroll-fade-t-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-mask: linear-gradient(to bottom, transparent 0, #000 var(--scroll-fade-t,0px), #000 100%); -webkit-mask-image: var(--scroll-fade-mask); mask-image: var(--scroll-fade-mask); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-t 1ms ease-in-out; animation-timeline: scroll(self y); animation-range: 0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)); animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-t: var(--_scroll-fade-size-t); }}@utility scroll-fade-b{--_scroll-fade-size-b: var(--scroll-fade-b-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-mask: linear-gradient(to bottom, #000 0, #000 calc(100% - var(--scroll-fade-b,0px)), transparent 100%); -webkit-mask-image: var(--scroll-fade-mask); mask-image: var(--scroll-fade-mask); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-b 1ms ease-in-out; animation-timeline: scroll(self y); animation-range: calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%; animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-b: var(--_scroll-fade-size-b); }}@utility scroll-fade-l{--_scroll-fade-size-s: var(--scroll-fade-s-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-mask: linear-gradient(to right, transparent 0, #000 var(--scroll-fade-s,0px), #000 100%); -webkit-mask-image: var(--scroll-fade-mask); mask-image: var(--scroll-fade-mask); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-s 1ms ease-in-out; animation-timeline: scroll(self x); animation-range: 0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)); animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-s: var(--_scroll-fade-size-s); }}@utility scroll-fade-r{--_scroll-fade-size-e: var(--scroll-fade-e-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-mask: linear-gradient(to right, #000 0, #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%); -webkit-mask-image: var(--scroll-fade-mask); mask-image: var(--scroll-fade-mask); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-e 1ms ease-in-out; animation-timeline: scroll(self x); animation-range: calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%; animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-e: var(--_scroll-fade-size-e); }}@utility scroll-fade-s{--_scroll-fade-size-s: var(--scroll-fade-s-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-mask: linear-gradient(to right, transparent 0, #000 var(--scroll-fade-s,0px), #000 100%); &:where([dir="rtl"], [dir="rtl"] *) { --scroll-fade-mask: linear-gradient(to left, transparent 0, #000 var(--scroll-fade-s,0px), #000 100%); } -webkit-mask-image: var(--scroll-fade-mask); mask-image: var(--scroll-fade-mask); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-s 1ms ease-in-out; animation-timeline: scroll(self inline); animation-range: 0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)); animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-s: var(--_scroll-fade-size-s); }}@utility scroll-fade-e{--_scroll-fade-size-e: var(--scroll-fade-e-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10)))); --scroll-fade-mask: linear-gradient(to right, #000 0, #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%); &:where([dir="rtl"], [dir="rtl"] *) { --scroll-fade-mask: linear-gradient(to left, #000 0, #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%); } -webkit-mask-image: var(--scroll-fade-mask); mask-image: var(--scroll-fade-mask); -webkit-mask-composite: source-in; mask-composite: intersect; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; @supports (animation-timeline: scroll()) { animation: scroll-fade-reveal-e 1ms ease-in-out; animation-timeline: scroll(self inline); animation-range: calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%; animation-fill-mode: both; } @supports not (animation-timeline: scroll()) { --scroll-fade-e: var(--_scroll-fade-size-e); }}@utility scroll-fade-*{--scroll-fade-size: calc(var(--spacing) * --value(integer)); --scroll-fade-size: --value([length], [percentage]);}@utility scroll-fade-t-*{--scroll-fade-t-size: calc(var(--spacing) * --value(integer)); --scroll-fade-t-size: --value([length], [percentage]);}@utility scroll-fade-b-*{--scroll-fade-b-size: calc(var(--spacing) * --value(integer)); --scroll-fade-b-size: --value([length], [percentage]);}@utility scroll-fade-s-*{--scroll-fade-s-size: calc(var(--spacing) * --value(integer)); --scroll-fade-s-size: --value([length], [percentage]);}@utility scroll-fade-e-*{--scroll-fade-e-size: calc(var(--spacing) * --value(integer)); --scroll-fade-e-size: --value([length], [percentage]);}@utility scroll-fade-none{--scroll-fade-mask: none;}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@theme inline{@keyframes tw-shimmer { from { background-position: 100% 0; } to { background-position: 0 0; } }}@utility shimmer{--_spread: var(--shimmer-spread,calc(3ch + 40px)); --_base: currentColor; --_highlight: var(--shimmer-color,oklch(from currentColor l c h / calc(alpha* .2))); background-image: var(--shimmer-image,linear-gradient(calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% - var(--_spread) * .5), var(--_highlight) 50%, color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% + var(--_spread) * .5), var(--_base) calc(50% + var(--_spread)))); background-repeat: no-repeat; background-size: calc(200% + var(--_spread) * 2) 100%; background-position: 0 0; background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: var(--shimmer-text-fill,transparent); animation: tw-shimmer var(--shimmer-duration,2s) linear infinite; @variant dark { --_highlight: var(--shimmer-color,oklch(from currentColor max(.8, calc(l + .4)) c h / calc(alpha + .4))); } &:where([dir="rtl"], [dir="rtl"] *) { animation-direction: reverse; }}@utility shimmer-once{animation-iteration-count: 1;}@utility shimmer-reverse{animation-direction: reverse;}@utility shimmer-none{--shimmer-image: none; --shimmer-text-fill: currentColor;}@utility shimmer-color-*{--shimmer-color: --value(--color, [color]); --shimmer-color: color-mix(in oklch, --value(--color, [color]) calc(--modifier(integer) * 1%), transparent);}@utility shimmer-duration-*{--shimmer-duration: calc(--value(integer) * 1ms);}@utility shimmer-spread-*{--shimmer-spread: calc(var(--spacing) * --value(integer)); --shimmer-spread: --value([length], [percentage]);}@utility shimmer-angle-*{--shimmer-angle: calc(--value(integer) * 1deg);}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@custom-variant dark (&:is(.dark *));@theme inline{--color-background: var(--background); --color-foreground: var(--foreground); --font-sans: var(--font-geist-sans); --font-mono: var(--font-geist-mono); --font-heading: var(--font-sans); --color-sidebar-ring: var(--sidebar-ring); --color-sidebar-border: var(--sidebar-border); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); --color-sidebar-accent: var(--sidebar-accent); --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); --color-sidebar-primary: var(--sidebar-primary); --color-sidebar-foreground: var(--sidebar-foreground); --color-sidebar: var(--sidebar); --color-chart-5: var(--chart-5); --color-chart-4: var(--chart-4); --color-chart-3: var(--chart-3); --color-chart-2: var(--chart-2); --color-chart-1: var(--chart-1); --color-ring: var(--ring); --color-input: var(--input); --color-border: var(--border); --color-destructive: var(--destructive); --color-accent-foreground: var(--accent-foreground); --color-accent: var(--accent); --color-muted-foreground: var(--muted-foreground); --color-muted: var(--muted); --color-secondary-foreground: var(--secondary-foreground); --color-secondary: var(--secondary); --color-primary-foreground: var(--primary-foreground); --color-primary: var(--primary); --color-popover-foreground: var(--popover-foreground); --color-popover: var(--popover); --color-card-foreground: var(--card-foreground); --color-card: var(--card); --radius-sm: calc(var(--radius) * .6); --radius-md: calc(var(--radius) * .8); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) * 1.4); --radius-2xl: calc(var(--radius) * 1.8); --radius-3xl: calc(var(--radius) * 2.2); --radius-4xl: calc(var(--radius) * 2.6);}body{font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif}:root{--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}:root{--background:#f3f6f9;--foreground:#172b3b;--primary:#126c74;--primary-foreground:#fff;--accent:#e5f2f2;--accent-foreground:#125962;--muted:#edf1f5;--muted-foreground:#526c79;--border:#dde5ec;--input:#ccd8e0;--ring:#21969e;--sidebar:#152e3b;--sidebar-foreground:#d7e4ea;--sidebar-accent:#264553;--sidebar-accent-foreground:#fff;--sidebar-border:#2c4654;--sidebar-primary:#48c4be;--radius:.65rem}body{margin:0;font-family:Arial,Microsoft YaHei,sans-serif;font-size:16px}button{cursor:pointer}button:disabled{cursor:not-allowed}.brand{align-items:center;gap:12px;padding:25px 16px 29px;display:flex}.brandmark{color:#173e47;background:#e1eeee;border-radius:9px;place-items:center;width:42px;height:44px;font-size:24px;font-weight:700;display:grid}.brand strong{letter-spacing:5px;font-size:24px}.brand small,.account small{color:#a8c1cd;margin-top:4px;font-size:12px;display:block}.navcaption{color:#8eaab8;padding:12px 22px;font-size:12px}[data-slot=sidebar-menu]{gap:6px;padding:0 14px}[data-slot=sidebar-menu-button]{height:44px;padding:0 14px;font-size:14px}.account{border-top:1px solid #35505c;align-items:center;gap:12px;padding:20px 12px;font-size:14px;display:flex}.workspace{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--border);background:#fff;align-items:center;gap:12px;min-height:72px;padding:16px 30px;font-size:14px;display:flex}.topbar>.badge{margin-left:auto}.content{max-width:1510px;margin:auto;padding:36px}.pageheading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;display:flex}h1{letter-spacing:-.8px;margin:5px 0 10px;font-size:29px;font-weight:700}h2{margin:0;font-size:18px;font-weight:650}.eyebrow{letter-spacing:1.8px;color:#57727f;font-size:12px;font-weight:600}.muted{color:#526c79;font-size:14px;line-height:1.7}.date{color:#526c79;font-size:14px}.stats{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:32px;display:grid}.metric{border:1px solid var(--border);background:#fff;border-radius:12px;padding:23px}.metric>span{color:#526c79;font-size:14px}.metric>strong{letter-spacing:-.7px;font-variant-numeric:tabular-nums;margin-top:13px;font-size:28px;display:block}.metric small{color:#526c79;letter-spacing:0;font-size:14px;font-weight:400}.metric p{color:#526c79;margin:10px 0 0;font-size:12px}.sectionheading,.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.sectionheading{margin:25px 0 18px}.projectgrid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.projectcard{text-align:left;border:1px solid var(--border);background:#fff;border-radius:14px;padding:26px;transition:box-shadow .2s,transform .2s}.projectcard:hover{border-color:#80b8bc;transform:translateY(-3px);box-shadow:0 12px 30px #203a4c0d}.projecticon{color:#337681;background:#edf5f7;border-radius:12px;place-items:center;width:46px;height:46px;display:grid}.projectcard .eyebrow{margin:25px 0 10px;display:block}.projectcard h2{font-size:21px}.badge{white-space:nowrap;color:#526b7b;background:#eef3f7;border-radius:5px;align-items:center;gap:5px;padding:5px 9px;font-size:12px;display:inline-flex}.badge.green{color:#257556;background:#e6f5ef}.badge.amber{color:#9a6213;background:#fff2d8}.badge.red{color:#b34c42;background:#fff0ee}.progresslabel{justify-content:space-between;margin-bottom:12px;font-size:14px;display:flex}.projectfoot{border-top:1px solid var(--border);color:#59717e;justify-content:space-between;margin-top:26px;padding-top:19px;font-size:14px;display:flex}.projectfoot>span:last-child{color:#126c74;gap:8px;display:flex}.notice{color:#526c79;border:1px dashed #ccd9e1;border-radius:10px;align-items:center;gap:12px;margin-top:25px;padding:18px;font-size:14px;display:flex}.panel{border:1px solid var(--border);background:#fff;border-radius:12px;padding:24px}.button{color:#fff;background:#126c74;border:1px solid #126c74;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:inline-flex}.button.secondary{color:#345361;background:#fff;border-color:#d1dde4}.button.small{padding:6px 10px}.link{color:#126c74;font-size:14px}.grid2{grid-template-columns:1.7fr 1fr;gap:22px;display:grid}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.empty{text-align:center;color:#526c79;padding:40px}.right{margin-left:auto}input,textarea{font-size:16px}table{font-size:14px}th{color:#526c79;background:#f8fafb}td,th{padding:14px!important}td{border-bottom:1px solid #edf1f4}.money{font-variant-numeric:tabular-nums;font-weight:600}.subtext{color:#526c79;margin-top:5px;font-size:12px;display:block}@media (width<=1100px){.stats{grid-template-columns:1fr 1fr}.content{padding:24px}.grid2{grid-template-columns:1fr}}@media (width<=650px){.content{padding:20px 16px}.projectgrid{grid-template-columns:1fr}.pageheading{align-items:flex-start}.date{display:none}h1{font-size:25px}.topbar{flex-wrap:wrap;padding:12px 16px}.metric{padding:17px}.metric>strong{font-size:22px}.stats{gap:12px}.badge{font-size:12px}.projectcard{padding:22px}}.prototypebar{color:#537081;background:#eaf2f6;border-bottom:1px solid #dbe8ef;padding:9px 30px;font-size:12px}.picker{background:#fff;min-width:140px;min-height:36px}.pagefooter{color:#526c79;border-top:1px solid #dae4eb;justify-content:space-between;margin-top:36px;padding:22px 0;font-size:12px;display:flex}.accentmetric{color:#fff;background:#146b72;border-color:#146b72}.accentmetric>span,.accentmetric p{color:#c5e6e7}.below{margin-top:22px}.legend{color:#526c79;align-items:center;gap:8px;margin:20px 0;font-size:12px;display:flex}.dot{border-radius:2px;width:8px;height:8px;margin-left:8px}.pale{background:#d6e4e9}.teal{background:#2c9193}.gantt{margin-top:16px;overflow-x:auto}.gantt-head,.gantt-row{grid-template-columns:180px minmax(240px,1fr) 45px;align-items:center;gap:15px;min-width:520px;display:grid}.gantt-head{color:#526c79;margin-bottom:8px;font-size:12px}.gantt-head>div{justify-content:space-between;display:flex}.gantt-row{border-top:1px solid #edf2f5;min-height:68px}.gantt-row strong{font-size:14px;font-weight:500}.gantt-row small{color:#526c79;margin-top:4px;font-size:12px;display:block}.track{background:repeating-linear-gradient(90deg,#0000 0 calc(16.66% - 1px),#edf2f5 calc(16.66% - 1px) 16.66%);height:44px;position:relative}.planned,.actual{border-radius:3px;height:9px;position:absolute}.planned{background:#dce8ed;top:11px}.actual{background:#278a8b;top:24px}.listitem{text-align:left;border-bottom:1px solid #edf2f5;align-items:center;gap:13px;width:100%;padding:21px 0;display:flex}.listitem strong{font-size:14px;font-weight:500}.listitem small{color:#526c79;margin-top:7px;font-size:12px;display:block}.clickable:hover{color:#14767a}.logitem{border-bottom:1px solid #edf1f4;gap:20px;padding:23px 0;display:flex}.logdate{color:#277b81;white-space:nowrap;padding-top:2px;font-size:14px;font-weight:600}.logitem strong{font-size:15px}.logitem p{margin:8px 0}.logitem small{color:#526c79;font-size:12px}.logbody{margin:20px 0;line-height:1.8}.search{background:#fff;max-width:270px}.settlementtotals{max-width:480px;margin:25px 0 25px auto}.settlementtotals>div{justify-content:space-between;gap:15px;padding:12px;font-size:14px;display:flex}.settlementtotals .total{color:#156e71;background:#eaf5f4;border-radius:6px}.settlementtotals .total strong{font-size:21px}.signatures{border-top:1px dashed #d9e3e8;flex-wrap:wrap;justify-content:space-between;gap:24px;padding:30px 0 40px;font-size:14px;display:flex}.filegrid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.filecard h2{font-size:15px}.filecover{color:#577888;background:#edf3f6;border-radius:12px 12px 0 0;justify-content:center;align-items:center;gap:18px;height:130px;margin:-24px -24px 20px;font-size:14px;display:flex}.settingrow{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:14px;display:flex}.inlinefield{align-items:center;gap:8px;font-size:14px;display:flex}.inlinefield input{width:80px}.appdialog{max-height:88vh;overflow-y:auto;max-width:min(620px,100vw - 32px)!important;padding:28px!important}.entryform{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:8px;font-size:14px;display:flex}.field input{height:40px}.field input[type=file]{background:#f6f9fb;border:1px dashed #b9ccd7;height:auto;padding:10px}.field textarea{border:1px solid #ccd8e0;border-radius:7px;padding:10px}.field .picker{width:100%}.formgrid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.feedback{color:#236950;background:#e5f3ed;border-radius:8px;justify-content:space-between;margin-bottom:20px;padding:14px 18px;font-size:14px;display:flex}.previewimage{object-fit:contain;max-width:100%;max-height:55vh}.entryform .button{margin-top:8px}.button:disabled{opacity:.7}@media (width<=1100px){.filegrid{grid-template-columns:1fr 1fr}.metric>strong{font-size:24px}}@media (width<=650px){.prototypebar{padding:9px 16px}.filegrid,.formgrid{grid-template-columns:1fr}.pageheading{flex-wrap:wrap}.pagefooter{gap:12px}.topbar .picker{margin-left:auto}.metric>strong{font-size:20px}.appdialog{padding:22px!important}.panel{padding:18px}.filecover{margin:-18px -18px 18px}}@media print{[data-slot=sidebar],.topbar,.prototypebar,.pageheading,.pagefooter,.no-print,.feedback,[data-slot=sidebar-gap],.content>.toolbar{display:none!important}.workspace,.content{width:100%!important;margin:0!important;padding:0!important}.statement{box-shadow:none;border:0}.content{max-width:none}.statement h2{font-size:20px}body{background:#fff}table{font-size:12px}td,th{padding:8px!important}@page{size:A4;margin:14mm}}.settings-tabs{flex-wrap:wrap;justify-content:flex-start;gap:6px;display:flex;background:0 0!important;height:auto!important}.settings-tabs [data-slot=tabs-trigger]{background:#fff;border:1px solid #dce6eb;min-height:40px;padding:10px 14px}.settings-tabs [data-active]{color:#fff!important;background:#146b72!important}.schedule-period-toolbar{align-items:center;gap:14px}.schedule-period-tabs{display:block!important}.schedule-period-list{border:1px solid #d8e3e8;min-height:40px;background:#eef3f5!important;border-radius:10px!important;gap:5px!important;height:auto!important;padding:3px!important;display:inline-flex!important}.schedule-period-list [data-slot=tabs-trigger]{white-space:nowrap;min-height:32px;color:#526c79!important;border-radius:7px!important;flex-direction:row!important;flex:none!important;justify-content:center!important;align-items:center!important;gap:5px!important;padding:5px 11px!important;display:inline-flex!important}.schedule-period-list [data-slot=tabs-trigger][data-active]{color:#126c74!important;background:#fff!important;box-shadow:0 1px 4px #173f4a24!important}.schedule-period-list svg{flex:none;width:15px;height:15px;display:block;margin:0!important}.schedule-dialog .field>[data-slot=input]{box-sizing:border-box;color:#102f3d;border-radius:8px;width:100%;min-height:42px;padding:9px 12px;display:block;background:#fff!important;border:1px solid #afc7d3!important}.schedule-dialog .field>[data-slot=input]:focus{box-shadow:0 0 0 3px #258c9626;border-color:#258c96!important}.schedule-form-actions{background:#fff;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 0 0;display:grid;position:sticky;bottom:-28px}.schedule-form-actions .button{margin-top:0}.schedule-delete{min-width:132px;color:#b42318!important;background:#fff!important;border-color:#d96860!important}.schedule-delete:hover{background:#fff3f1!important}.schedule-delete svg{width:16px;height:16px}@media (width<=650px){.schedule-period-toolbar{align-items:flex-start}.schedule-period-list [data-slot=tabs-trigger]{padding:6px 9px!important}.schedule-period-toolbar>small{width:100%}.schedule-form-actions{grid-template-columns:1fr}.schedule-delete{width:100%}}.dash-period{color:#526c79;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 0 16px;font-size:12px;display:flex}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px;display:grid}.dash-panel{background:linear-gradient(150deg,#f3f9fc 0%,#fff 35%);min-width:0;padding:24px}.dash-mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0;display:grid}.dash-value{text-align:left;background:#f3f7fa;border-radius:10px;flex-direction:column;gap:8px;min-width:0;padding:12px;display:flex}.dash-value span{color:#526c79;font-size:12px}.dash-value strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:20px;line-height:1.3}.dash-value:is(button):hover,.dash-note:hover{background:#e8f4f4}.dash-progress{gap:22px;margin-top:28px;display:grid}.dash-progress button{text-align:left}.dash-progress .row{margin-bottom:12px}.dash-progress strong{color:#13848b;font-size:28px}.dash-progress button:nth-child(2) strong{color:#7599b7}.dash-progress button:nth-child(2) [data-slot=progress-indicator]{background:#85aac4}.dash-caption{color:#526c79;margin:14px 0;font-size:12px;line-height:1.8}.dash-caption i{background:#188d94;border-radius:2px;width:9px;height:9px;margin:0 4px;display:inline-block}.dash-caption i.due{background:#cbdce8}.dash-note{text-align:left;border:1px solid #e0e9ef;border-radius:10px;flex-direction:column;gap:8px;width:100%;padding:15px;display:flex}.dash-note span{color:#526c79;font-size:12px}.dash-note strong{font-size:14px;font-weight:500;line-height:1.6}.dash-bar-row{margin:17px 0}.dash-bar-row>.row{flex-wrap:wrap;gap:8px;font-size:12px}.dash-bar-row .link{font-variant-numeric:tabular-nums;font-size:12px}.dash-track{background:#f1f5f8;border-radius:8px;width:100%;height:10px;margin-top:8px;display:flex;overflow:hidden}.dash-track button{background:#188d94;min-width:0;height:100%;padding:0}.dash-track button.due{background:#cbdce8}.dash-track button:hover{filter:brightness(.85)}.dash-reserve{justify-content:space-around;align-items:center;gap:24px;margin:24px 0;display:flex}.dash-reserve>div{gap:12px;min-width:0;display:grid}.dash-donut{border-radius:50%;flex-shrink:0;width:180px;height:180px;padding:13px}.dash-donut>span{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:7px;height:100%;display:flex}.dash-donut small{color:#526c79;font-size:12px}.dash-donut strong{font-size:20px}.dash-source{border-bottom:1px solid #edf2f6;justify-content:space-between;padding:9px 0;font-size:14px;display:flex}button:focus-visible{outline-offset:3px;outline:2px solid #188d94}@media (width<=1150px){.dashboard-grid{grid-template-columns:1fr}.dash-mini{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=550px){.dash-panel{padding:18px}.dash-reserve{flex-direction:column}.dash-reserve>div{grid-template-columns:1fr 1fr;width:100%}.dash-value strong{font-size:18px}}.projectcard{position:relative}.project-card-hit{z-index:1;border-radius:inherit;background:0 0;position:absolute;inset:0}.project-card-hit:focus-visible{outline-offset:3px;outline:3px solid #188d94}.project-card-info{z-index:2;position:relative}.company-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:30px;display:grid}.company-metric{text-align:left;width:100%;min-width:0}.company-metric strong{font-size:24px}.company-metric:hover{background:#f4fafb;border-color:#188d94}.company-project{border-top:1px solid #dfe8ee;margin-top:22px;padding-top:18px}.company-project-title{text-align:left;color:#126c74;justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.company-project-title small{color:#526c79;margin-top:6px;font-size:12px;display:block}@media (width<=650px){.company-stats{grid-template-columns:1fr}.company-project-title{align-items:flex-start}.company-metric strong{font-size:22px}}.company-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.company-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;padding:22px;display:grid}.company-summary-main{text-align:left;min-width:0}.company-summary-main>span{color:#526c79;font-size:14px}.company-summary-main>strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:14px 0;font-size:24px;display:block}.company-preview{border-left:1px solid #dfe8ee;flex-direction:column;gap:10px;max-height:190px;padding-left:16px;display:flex;overflow:auto}.company-preview button{text-align:left;border-radius:6px;flex-direction:column;gap:5px;padding:6px;font-size:12px;display:flex}.company-preview button:hover{background:#edf7f7}.company-preview strong{color:#126c74;font-size:14px}@media (width<=1100px){.company-stats{grid-template-columns:1fr}}@media (width<=450px){.company-summary{grid-template-columns:1fr}.company-preview{border-top:1px solid #dfe8ee;border-left:0;padding:12px 0 0}}.company-preview .public-cash-preview{background:#e7f3f1;border:1px solid #bfdbd6;gap:9px;margin-bottom:4px;padding:12px}.company-preview .public-cash-preview>span{color:#174f55;font-size:14px;font-weight:700}.company-preview .public-cash-preview>strong{font-size:16px;line-height:1.6}.project-cash-label{color:#718895;border-top:1px solid #dfe8ee;margin-top:2px;padding-top:10px;font-size:12px;display:block}.company-stats{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px}.company-summary{grid-template-columns:1fr;align-content:start;gap:14px;padding:20px}.company-summary-main>strong{margin:10px 0;font-size:24px}.company-summary-main p{margin:0;line-height:1.6}.company-preview{border-top:1px solid #dfe8ee;border-left:0;gap:7px;max-height:235px;padding:12px 0 0}.company-preview:has(.public-cash-preview){max-height:235px}.company-preview button{gap:3px;padding:5px 6px}.company-preview .public-cash-preview{gap:5px;padding:9px 10px}.company-preview .public-cash-preview>strong{font-size:15px}.project-cash-label{padding-top:7px}@media (width<=700px){.company-stats{grid-template-columns:1fr}}.company-summary{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:12px;padding:18px}:is(.company-preview,.company-preview:has(.public-cash-preview)){border-top:0;border-left:1px solid #dfe8ee;max-height:none;padding:0 0 0 12px;overflow:visible}.company-preview .cash-group{background:#edf6f5;border:1px solid #d2e5e2;gap:6px;padding:10px}.cash-group>span{font-weight:600}.cash-group[aria-expanded=true]{background:#deeeeb;border-color:#188d94}.cash-expansion{margin-bottom:26px}.cash-branches{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.company-summary-main>strong{font-size:22px}@media (width<=700px){.cash-branches{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.company-summary{grid-template-columns:1fr}.company-preview{border-top:1px solid #dfe8ee;border-left:0;padding:12px 0 0}.cash-branches{grid-template-columns:1fr}}.member-row{cursor:pointer}.member-row:hover{background:#f0f8f8}.member-dialog{max-width:760px!important}.member-project{border:1px solid #dce7eb;border-radius:10px;margin:12px 0;padding:16px}.storage-numbers{justify-content:space-between;align-items:end;gap:16px;margin:28px 0 18px;display:flex}.storage-numbers>strong{font-size:30px}.storage-numbers small{color:#526c79;font-size:18px}.storage-progress{border-radius:10px;height:18px!important}.storage-progress.warning [data-slot=progress-indicator]{background:#d39c24}.storage-progress.critical [data-slot=progress-indicator]{background:#c75349}.log-photos{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:14px;display:grid}.log-photos img{object-fit:cover;border-radius:8px;width:100%;height:130px}.log-photos span{overflow-wrap:anywhere;margin-top:5px;font-size:12px;display:block}.log-photos button{text-align:left}.task-line{border-top:1px solid #e2eaef;justify-content:space-between;gap:16px;margin-top:12px;padding:18px 0;display:flex}.task-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-fold{text-align:left;width:100%}@media (width<=650px){.task-line{flex-direction:column}}.owner-home{gap:18px;display:grid}.owner-home .panel{padding:20px}.owner-progress{align-items:center;gap:28px;margin:20px 0;display:flex}.owner-double{flex:1;gap:6px;max-width:620px;display:grid}.owner-double>div{align-items:center;gap:12px;display:flex}.owner-double>div>span{flex-shrink:0;width:85px;font-size:14px}.owner-double [data-slot=progress]{height:9px}.owner-gantt-head,.owner-gantt-row{text-align:left;grid-template-columns:220px minmax(120px,1fr) 45px;align-items:center;gap:14px;width:100%;display:grid}.owner-gantt-head{color:#6e879a;padding:8px 0;font-size:12px}.owner-gantt-head>div{justify-content:space-between;display:flex}.owner-gantt-row{border-top:1px solid #e9eff3;padding:12px 0;font-size:13px}.owner-gantt-row small{color:#6e879a;margin-top:4px;font-size:12px;display:block}.owner-timeline{background:repeating-linear-gradient(90deg,#eef3f6 0 1px,#0000 1px 25%);height:25px;position:relative}.owner-timeline i,.owner-timeline b{background:#d9e7ef;border-radius:3px;height:8px;position:absolute;top:5px}.owner-timeline b{background:#198d94;top:14px}.owner-timeline em{border-left:1px dashed #d79732;position:absolute;top:-8px;bottom:-12px}.owner-finances{grid-template-columns:1fr 1fr;gap:18px;display:grid}.owner-money-row{justify-content:space-between;gap:12px;margin:18px 0;display:flex}.owner-number{text-align:left;min-width:0}.owner-number span,.owner-number strong{display:block}.owner-number span{color:#678292;font-size:12px}.owner-number strong{overflow-wrap:anywhere;margin-top:8px;font-size:18px}.owner-category{margin-top:13px;font-size:12px}.owner-category .link{font-size:12px}.owner-reserve-chart{align-items:center;gap:18px;margin:20px 0;display:flex}.owner-donut{border-radius:50%;flex-shrink:0;width:150px;height:150px;padding:15px}.owner-donut>span{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;gap:8px;height:100%;display:flex}.owner-donut small{color:#678292;font-size:12px}.owner-donut strong{font-size:17px}.owner-legend{flex:1;gap:9px;display:grid}.owner-legend button{text-align:left;align-items:start;gap:7px;font-size:12px;display:flex}.owner-legend i{border-radius:3px;flex-shrink:0;width:9px;height:9px;margin-top:4px}.owner-legend small{color:#678292;display:block}.owner-balance{text-align:left;border-top:1px solid #e2eaef;width:100%;padding-top:12px;font-size:13px}.owner-balance [data-slot=progress]{height:6px;margin:10px 0}.owner-balance small{color:#678292;font-size:12px}.owner-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.owner-files button{text-align:left;border-top:1px solid #e6eef2;padding-top:10px}.owner-files strong{font-size:14px}.owner-files small{color:#678292;margin-top:5px;font-size:12px;display:block}.owner-contract{text-align:left;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:16px;width:100%;padding:12px 0;font-size:13px;display:grid}@media (width<=1100px){.owner-reserve-chart{gap:10px}.owner-donut{width:120px;height:120px;padding:11px}.owner-donut strong{font-size:14px}.owner-money-row{flex-wrap:wrap}.owner-number strong{font-size:16px}.owner-category .row{flex-wrap:wrap;gap:3px}}@media (width<=750px){.owner-finances{grid-template-columns:1fr}.owner-progress{flex-direction:column;align-items:stretch;gap:12px}.owner-gantt-head,.owner-gantt-row{grid-template-columns:135px minmax(100px,1fr) 35px;gap:8px}.owner-contract,.owner-files{grid-template-columns:1fr}}.owner-double>div>[data-slot=progress]{flex:1;gap:0;width:100%;min-width:0;height:9px}.owner-double [data-slot=progress-track]{background:#e6eef3;width:100%;height:9px}.owner-double [data-slot=progress-indicator]{background:#188d94}.owner-double .plan [data-slot=progress-indicator]{background:#85aac4}.procurement-dialog{max-height:88vh;overflow-y:auto;max-width:900px!important}.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.procurement-item{text-align:left;border-bottom:1px solid #e5eef3;justify-content:space-between;width:100%;padding:18px 0;display:flex}.quote-snapshot{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.reserve-needs{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.reserve-needs button{text-align:left;background:#f2f7fa;border-radius:8px;padding:12px}.reserve-needs strong,.reserve-needs small{display:block}.reserve-needs>small{grid-column:1/-1}.procurement-preview{text-align:left;border-bottom:1px solid #e5eef3;align-items:center;gap:18px;width:100%;padding:16px 0;display:flex}.procurement-preview strong{flex:1}@media (width<=650px){.quote-grid{grid-template-columns:1fr}.procurement-preview{flex-wrap:wrap}}.quote-payment{padding:14px 0}.payment-ratios{flex-wrap:wrap;gap:12px;display:flex}.payment-ratios .field{flex:1;min-width:110px}.quote-upload{cursor:pointer;margin:12px 0}.quote-upload.disabled{cursor:wait;opacity:.65;pointer-events:none}.upload-status{color:#176f73;font-size:14px}.quote-thumb{overflow-wrap:anywhere;max-width:340px;display:block}.quote-thumb img{object-fit:contain;background:#f1f6f8;border-radius:8px;width:100%;max-height:220px;display:block}.quote-thumb small{color:#638098;margin:6px 0;font-size:12px;display:block}.payment-total{background:#edf7f4;border-radius:8px;padding:12px}.quote-lightbox{max-height:94vh;width:min(1100px,94vw)!important;max-width:94vw!important;padding:24px!important}.quote-lightbox>img{object-fit:contain;width:100%;height:72vh}.quote-lightbox iframe{border:0;width:100%;height:72vh}.quote-lightbox-close{cursor:pointer;background:#e6eff2;border-radius:50%;width:40px;height:40px;font-size:28px;position:absolute;top:10px;right:12px}.quote-thumb{cursor:zoom-in}.evidence-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.evidence-grid img{max-height:170px}.quote-lightbox{z-index:80!important}.month-switch{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.month-title{align-items:center;display:inline-flex}.month-title select{color:#153b48;cursor:pointer;opacity:1;background-color:#fff;border:1px solid #cbdde4;border-radius:8px;min-width:138px;height:42px;padding:0 34px 0 14px;font-size:14px;font-weight:500;position:static}.month-title select option{font-size:14px;font-weight:400}.month-title select:focus-visible{outline-offset:2px;outline:2px solid #14858c}.month-sheet{border-top:1px solid #dbe7ed;margin-top:22px;padding-top:20px}.labor-table{border-collapse:collapse;width:100%;margin-top:16px}.labor-table th,.labor-table td{text-align:left;vertical-align:top;border-bottom:1px solid #dfebee;padding:12px}.labor-table th{color:#486a7d;background:#f4f8fa;font-weight:500}.labor-table input{border:1px solid #ccdce2;border-radius:6px;max-width:120px;padding:7px}.attendance-summary{background:#f0f6f8;border-radius:12px;align-items:center;gap:26px;margin:20px 0;padding:18px 20px;display:flex}.attendance-summary>div{white-space:nowrap;flex-direction:column;gap:7px;display:flex}.attendance-summary span{color:#526c79;font-size:13px}.attendance-summary .trade-summary{white-space:normal;flex:1}.trade-summary strong{font-size:16px}.attendance-scroll{border:1px solid #dae5ec;border-radius:8px;max-width:100%;overflow:auto}.attendance-grid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:13px}.attendance-grid th,.attendance-grid td{text-align:center;white-space:nowrap;border-bottom:1px solid #e5edf1;border-right:1px solid #e5edf1;padding:6px}.attendance-grid thead th{background:#f0f6f8;height:42px;font-weight:500}.attendance-grid .sticky-name{z-index:1;text-align:left;background:#fff;min-width:130px;padding:12px;position:sticky;left:0}.sticky-name small,.daily-person small{color:#526c79;margin-top:5px;font-weight:400;display:block}.attendance-cell{cursor:pointer;color:#178894;border-radius:5px;width:30px;height:38px}.attendance-cell:hover{background:#e6f3f2}.attendance-cell.checked{background:#dcf1eb;font-size:20px;font-weight:600}.attendance-cell:disabled{cursor:default;opacity:.4}.attendance-grid th.today{color:#116974;background:#ccece9}.roster-options{flex-wrap:wrap;gap:18px;padding:18px 0;display:flex}.roster-options label{align-items:center;gap:8px;display:flex}.daily-person{border-bottom:1px solid #e0e9ee;justify-content:space-between;align-items:center;gap:10px;padding:16px 0;display:flex}.attendance-day{display:none}.attendance-modes{gap:8px;display:flex}.hidden-mode{display:none!important}.forced-mode{display:block!important}@media (width<=700px){.attendance-summary{gap:12px;padding:14px;overflow-x:auto}.attendance-summary strong{font-size:18px}.attendance-summary .trade-summary{min-width:130px}.trade-summary strong{font-size:14px}.attendance-month{display:none}.attendance-day{display:block}.daily-person .button{min-height:42px;padding:9px 11px}.attendance-modes .button{padding:8px}.attendance-panel{padding:16px!important}.attendance-panel .formgrid{grid-template-columns:1fr}}.personnel-panel .field input,.personnel-panel .field select{color:#12374a;box-sizing:border-box;border-radius:8px;width:100%;min-height:42px;margin-top:8px;padding:10px 12px;display:block;background:#fff!important;border:1px solid #c6d8e3!important}.personnel-panel .field input:focus,.personnel-panel .field select:focus{outline-offset:1px;outline:2px solid #258c96}.personnel-panel .formgrid{gap:18px}.personnel-panel h3{margin:20px 0 12px}.personnel-panel .entryform{padding:20px}@media (width<=700px){.personnel-panel .formgrid{grid-template-columns:1fr}.personnel-panel .toolbar{flex-wrap:wrap}}.monthly-entry{margin-top:22px}.entry-choice{align-items:center;gap:12px;margin:14px 0;display:flex}.search-field{max-width:520px;display:block}.people-picker{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:12px 0 20px;display:grid}.people-picker button{text-align:left;color:#12374a;background:#fff;border:1px solid #d3e0e7;border-radius:9px;padding:13px}.people-picker button:hover{background:#f1f8f8;border-color:#16818b}.people-picker span{color:#526c79;margin-top:5px;font-size:13px;display:block}.person-details{border-top:1px solid #dbe6eb;margin:20px 0;padding-top:16px}.person-details summary{cursor:pointer;color:#08727c;font-weight:600}.monthly-labor .attendance-summary{margin-bottom:18px}.personnel-dialog .field input,.personnel-dialog .field select{background:#fff;border:1px solid #cbdbe4;border-radius:8px;width:100%;min-height:40px;padding:9px 11px}.month-entry-toggle{border-top:1px solid #e4edf2;align-items:center;gap:10px;padding:14px 0;display:flex}.month-entry-toggle input{accent-color:#146b72;width:18px;height:18px}.personnel-dialog .entryform>.toolbar{background:#fff;margin-bottom:0;padding:12px 0;position:sticky;bottom:-28px}.personnel-dialog .people-picker{max-height:45vh;overflow:auto}.quote-selection:not(:empty){border-top:1px solid #e5eef3;margin-top:20px;padding-top:16px;display:block}.reserve-threshold-track{margin-bottom:28px;position:relative}.reserve-threshold{color:#ae8d61;position:absolute;top:-4px;transform:translate(-50%)}.reserve-threshold i{background:#d6b887;width:1px;height:12px;margin:auto;display:block}.owner-balance .reserve-threshold small{white-space:nowrap;color:#ae8d61;margin-top:3px;font-size:10px;display:block}.reserve-threshold-track .reserve-threshold:last-child{max-width:100%}.image-file-picker{background:#f6f9fb;border-radius:8px;width:100%;color:#0000!important;border:1px dashed #bed1dc!important;padding:10px!important;font-size:0!important}.image-file-picker::file-selector-button{color:#146b72;cursor:pointer;background:#fff;border:1px solid #cbdbe4;border-radius:6px;padding:8px 14px;font-size:14px}.image-file-picker+.evidence-grid{margin-top:12px}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.purchase-summary{background:#eef5f7;border-radius:10px;flex-wrap:wrap;align-items:start;gap:24px;margin-bottom:20px;padding:16px 20px;display:flex}.purchase-summary>div,.purchase-summary>button{text-align:left;color:#6b8796;flex:1;min-width:145px;font-size:13px}.purchase-summary strong{color:#183442;margin-top:7px;font-size:20px;display:block}.purchase-summary small{margin-top:6px;font-size:11px;display:block}.purchase-breakdown{margin-top:18px}.appdialog select{background:#fff;border:1px solid #cbdbe4;border-radius:8px;width:100%;min-height:40px;padding:8px}.appdialog .field>[data-slot=input]{box-sizing:border-box;background:#fff;border-radius:8px;width:100%;min-height:40px;padding:8px 12px;display:block;border:1px solid #b8ccd8!important}.appdialog .field>.purchase-date-input{padding-right:7px;width:160px!important}.purchase-month-button{color:#146b72;cursor:pointer;background:#eef7f6;border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:6px;padding:8px 12px;display:inline-flex}.purchase-month-button strong{font-size:27px;font-weight:700}.purchase-month-button small{color:#698891;font-size:12px}.purchase-month-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.reimbursement-toolbar{z-index:2;background:#fff;border-bottom:1px solid #dce7eb;grid-template-columns:1fr auto;align-items:center;gap:10px 16px;padding:14px 0;display:grid;position:sticky;top:-28px}.reimbursement-toolbar label{align-items:center;gap:8px;font-weight:600;display:flex}.reimbursement-toolbar input,.reimbursement-row>input{accent-color:#146b72;width:18px;height:18px}.reimbursement-toolbar .button{grid-column:1/-1}.reimbursement-row{grid-template-columns:22px 1fr;align-items:start;gap:12px;display:grid}.reimbursement-row>input{margin-top:2px}.reimbursement-row .subtext{margin:6px 0;display:block}.batch-reimbursement-summary,.batch-reimbursement-list p{justify-content:space-between;gap:16px;display:flex}.batch-reimbursement-summary{background:#eef7f6;border-radius:9px;padding:16px}.batch-reimbursement-list{border-block:1px solid #dce7eb;max-height:260px;overflow:auto}.batch-reimbursement-list p{border-bottom:1px solid #edf2f5;margin:0;padding:12px 2px}.batch-reimbursement-list p:last-child{border-bottom:0}.spaced-ledger{min-width:100%;table-layout:auto!important;width:max-content!important}.spaced-ledger th,.spaced-ledger td{position:relative;white-space:nowrap!important;word-break:normal!important;padding-left:18px!important;padding-right:18px!important}table tbody td+td:before{content:"";background:#dce7eb;width:1px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.table-wrap{overflow-x:auto}.projectcard{padding:22px}.project-card-title{align-items:flex-start}.project-card-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.projectcard .project-card-meta .eyebrow{margin:4px 0;font-size:11px}.projectcard p{margin:8px 0 18px}.projectcard .projectfoot{margin-top:18px;padding-top:14px}.projectcard .below{margin-top:12px}.projectgrid~.company-cards{margin-top:24px}.finance-navigation{max-width:100%;margin-bottom:22px;padding:3px 0 5px;overflow-x:auto}.finance-navigation [data-slot=tabs-list]{background:#eaf0f3;border:1px solid #dce7eb;border-radius:12px;justify-content:flex-start;gap:8px;min-height:50px;padding:5px;height:auto!important}.finance-navigation [data-slot=tabs-trigger]{color:#526e7d;border-radius:8px;flex:none;height:40px;padding:0 18px;font-size:15px;font-weight:500}.finance-navigation [data-slot=tabs-trigger][data-active]{color:#fff;background:#146e78;font-weight:600;box-shadow:0 2px 5px #173f4a1a}.finance-navigation [data-slot=tabs-trigger]:not([data-active]):hover{color:#146e78;background:#f7fafb}@media (width<=640px){.finance-navigation [data-slot=tabs-list]{gap:5px}.finance-navigation [data-slot=tabs-trigger]{padding:0 14px;font-size:14px}}table tbody td{position:relative}.brand.brand-with-logo{flex-direction:column;align-items:flex-start;gap:12px;padding:24px 20px;display:flex}.brand-logo{object-fit:contain;width:180px;max-width:100%;height:auto;display:block}.brand-with-logo small{letter-spacing:2px;color:#a8c1cd;margin:0;font-size:12px}.purchase-upload-label{font-size:14px}.purchase-paste-zone{color:#66808d;cursor:text;background:#f6f9fb;border:1px dashed #bed1dc;border-radius:8px;outline:none;align-items:center;gap:12px;min-height:62px;margin-top:8px;padding:10px;display:flex}.purchase-paste-zone:focus{border-color:#258c96;box-shadow:0 0 0 3px #258c9620}.purchase-paste-zone .button{flex:none;margin:0}.purchase-paste-zone span{font-size:13px}@media (width<=520px){.purchase-paste-zone{flex-direction:column;align-items:flex-start}}.spaced-ledger thead .table-filter{color:#173f50;cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:7px;min-width:108px;min-height:34px;padding:6px 28px 6px 9px;font-weight:600}.spaced-ledger thead .table-filter:hover{background-color:#fff;border-color:#bfd2dc}.spaced-ledger thead .table-filter.active{color:#0b6f76;background-color:#e7f5f4;border-color:#16858d}.purchase-filter-toolbar{justify-content:flex-start}.purchase-filter-toolbar .button{min-height:36px;padding:7px 12px}body{margin:0}.site-filing{box-sizing:border-box;text-align:center;color:#6b7f99;background:#f4f8fc;width:100%;padding:12px 20px;font-size:12px;line-height:1.5}.site-filing a{color:inherit;text-decoration:none}.site-filing a:hover{text-decoration:underline}.production-login+.site-filing{color:#b9c8d6;background:0 0;position:fixed;bottom:0;left:0;right:0}.production-app+.site-filing{padding-left:232px}@media (width<=760px){.production-app+.site-filing{padding-right:12px;padding-bottom:calc(76px + env(safe-area-inset-bottom));padding-left:12px}}.reimbursement-row>div{overflow-wrap:anywhere;grid-column:2;min-width:0}.reimbursement-row>input{grid-area:1/1}.workspace-select-trigger.large-month-trigger{height:auto;min-height:62px;padding:8px 14px}.large-month-trigger>span:first-child{align-items:baseline;gap:6px;display:inline-flex}.large-month-trigger small{color:#698891;font-size:12px;font-weight:400}.large-month-trigger strong{color:inherit;font-size:27px;font-weight:700;line-height:1.3}.labor-settlement-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.labor-settlement-metrics>div{background:var(--ui-soft,#eef5f8);border-radius:8px;padding:12px}.labor-settlement-metrics strong{margin-top:6px;display:block}.labor-settlement-section{border-top:1px solid var(--ui-line,#dde6ed);margin-top:20px;padding-top:16px}.labor-settlement-section details{padding:10px 0}.labor-settlement-card input{max-width:100%}@media (width<=700px){.labor-settlement-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.business-advances .reserve-receipt-totals{margin-bottom:24px}.business-advances>.table-wrap,.labor-receipt-form{margin-top:20px}.labor-receipt-form>.field{margin-bottom:8px}.fund-table{border-collapse:collapse;width:100%;min-width:760px}.fund-table th,.fund-table td{text-align:left;border-bottom:1px solid #d7e5f3;padding:16px 12px}.fund-table th{color:#5d7ca4;background:#eef5ff}.fund-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0;display:flex}.workspace-month-filter{color:#173454;background:#fff;border:1px solid #cfe0f4;border-radius:8px;align-items:center;height:46px;display:inline-flex;overflow:hidden}.workspace-month-filter>span{white-space:nowrap;border-right:1px solid #e1ebf7;align-items:center;height:100%;padding:0 13px;font-size:13px;display:flex}.workspace-month-filter [data-slot=input]{color:#173454;background:0 0;width:180px;height:100%;min-height:0;padding:0 12px;box-shadow:none!important;border:0!important;border-radius:0!important}.workspace-month-filter:focus-within{border-color:#2b83f6;box-shadow:0 0 0 2px #2b83f620}@media (width<=600px){.workspace-month-filter{width:100%}.workspace-month-filter [data-slot=input]{width:100%;min-width:0}}.fund-table+p{margin-top:14px}.panel:has(.fund-table)>h3{margin-top:28px;margin-bottom:12px;font-size:16px;font-weight:650}.finance-detail-ledger th .workspace-select{min-width:110px}.finance-title-search{background:#fff;border:1px solid #d7e5f3;border-radius:7px;width:100%;min-width:150px;padding:10px 12px;font-size:13px;font-weight:400}.finance-detail-ledger th{vertical-align:middle}.attendance-summary{gap:0}.attendance-summary>div{border-left:1px solid #d3e2e8;padding:0 26px}.attendance-summary>div:first-child{border-left:0;padding-left:2px}.monthly-labor .attendance-summary{gap:0}@media (width<=700px){.attendance-summary{gap:0}.attendance-summary>div{padding:0 14px}}.attendance-summary{flex-wrap:wrap;gap:14px 0}.attendance-summary>div{padding:0 18px}.attendance-summary>div:first-child{padding-left:2px}.attendance-summary strong{font-size:19px}.attendance-summary .trade-summary{flex:280px;min-width:280px}.monthly-labor .attendance-summary{flex-wrap:wrap;gap:14px 0}@media (width<=700px){.attendance-summary{gap:12px 0}.attendance-summary>div{padding:0 12px}}.labor-settlement-sub{margin-top:6px}.labor-settlement-sub h4{color:var(--ui-sub,#5b6b76);margin:0;font-size:13px;font-weight:600}.labor-settlement-metrics.below{margin-top:10px;margin-bottom:0}.labor-settlement-formula{color:var(--ui-sub,#5b6b76);margin:12px 0 0;font-size:13px}
