:root{font-family:'Segoe UI',Arial,sans-serif;color:#172638;background:#f4f8f8;font-size:14px;--teal:#108b8d;--line:#dce6e6;--muted:#687c8b}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;background:white;padding:10px 15px;color:inherit;font-weight:600}button:disabled{opacity:.5;cursor:wait}button:hover{filter:brightness(.96)}a{color:var(--teal)}input,select,textarea{width:100%;border:1px solid #ccdada;border-radius:8px;background:#fff;padding:11px 12px;color:inherit;min-width:0}textarea{resize:vertical}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#5a6c7c}h1,h2,p{margin:0}h1{font-size:27px;letter-spacing:-.7px}h2{font-size:18px;letter-spacing:-.3px}p{line-height:1.65}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--teal);display:block;margin-bottom:8px}.muted,small{color:var(--muted);font-size:12px}.primary{color:white;background:var(--teal);border-color:var(--teal)}.secondary{background:#eef5f4}.danger{background:#bc4242;color:white;border-color:#bc4242}.brand{display:block}.brand img{width:190px;height:auto;display:block}.auth-wrap{max-width:1140px;margin:7vh auto;display:grid;grid-template-columns:1fr 420px;gap:90px;padding:30px}.auth-intro{padding:25px 0}.auth-intro .brand{margin-bottom:70px}.auth-intro h1{font-size:45px;line-height:1.2;margin:20px 0}.auth-intro p{font-size:17px;color:var(--muted);max-width:450px}.intro-features{display:grid;gap:18px;margin-top:35px;color:#34716e}.auth-card{padding:35px;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 60px #12353409}.auth-card p{margin:15px 0;color:var(--muted)}.auth-card form{display:grid;gap:16px}.auth-tabs{display:flex;margin:25px 0 20px;gap:6px}.auth-tabs button{flex:1}.auth-tabs .active{background:#173d43;color:white}.check{display:flex;flex-direction:row;align-items:flex-start;line-height:1.5}.check input{width:auto}.app{display:grid;grid-template-columns:247px minmax(0,1fr);min-height:100vh}.sidebar{padding:29px 18px;background:white;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:28px}.sidebar .brand{padding:0 7px}.workspace{display:flex;align-items:center;gap:10px;padding:14px 8px;background:#f3f8f7;border-radius:10px}.workspace strong{display:block;overflow-wrap:anywhere;max-width:155px}.workspace small{display:block;margin-top:5px;font-size:10px}.workspace-icon{background:#d8eeea;color:#12786e;padding:12px;border-radius:8px;font-weight:700}.sidebar nav{display:grid;gap:7px}.sidebar nav button{text-align:left;border-color:transparent;display:flex;gap:13px;color:#68808b;padding:12px}.sidebar nav button.active{background:#e5f3ef;color:#087d73}.sidebar-bottom{margin-top:auto;display:grid;gap:18px;padding:16px 8px}.sidebar-bottom a{text-decoration:none}.sidebar-bottom button{text-align:left;border:0;padding:0;font-weight:400}.app main{min-width:0;padding:0 36px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:27px 0;border-bottom:1px solid var(--line);margin-bottom:28px}.topbar h1{font-size:23px}.top-actions{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:12px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:23px 0}.section-heading p{color:var(--muted);font-size:12px;margin-top:8px}.actions{display:flex;gap:8px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.stat{border:1px solid var(--line);background:white;border-radius:13px;padding:22px}.stat>span{font-size:12px;color:var(--muted)}.stat strong{display:block;font-size:25px;font-weight:650;letter-spacing:-.7px;margin:12px 0 8px;overflow-wrap:anywhere}.stat small{font-size:11px}.stat.accent{background:#126c69;color:white;border-color:#126c69}.stat.accent>span,.stat.accent small{color:#d0ebe5}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{border:1px solid var(--line);border-radius:13px;background:white;overflow:hidden}.panel-heading{padding:21px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-heading h2{font-size:15px}.panel-heading button{border:0;padding:0;color:var(--teal);font-size:12px}.list-row{padding:18px 21px;border-bottom:1px solid #edf1f1;display:flex;align-items:center;justify-content:space-between;gap:14px}.list-row strong{font-size:13px}.list-row small{display:block;margin-top:7px}.list-row:last-child{border:0}.positive{color:#16846b}.negative{color:#b84942}.badge{display:inline-block;background:#ebf4f2;color:#247b6d;padding:5px 8px;border-radius:6px;font-size:11px;white-space:nowrap}.badge.overdue{background:#fff0ed;color:#b84942}.badge.pending{background:#fff7df;color:#987028}.filters{display:flex;gap:10px;margin:20px 0}.filters input{max-width:440px}.filters select{max-width:220px}.filters button{margin-left:auto;white-space:nowrap}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{padding:14px 17px;color:var(--muted);background:#fbfcfc;font-size:10px;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}td{padding:18px 17px;border-top:1px solid #eaf0ef;vertical-align:middle;overflow-wrap:anywhere;max-width:340px}td small{display:block;margin-top:6px;font-size:11px}.row-actions{display:flex;gap:6px;white-space:nowrap}.row-actions button{padding:7px 10px;font-size:11px}.empty{padding:45px 25px;text-align:center;color:var(--muted);font-size:13px}.company-form{padding:26px;max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}dialog{width:min(860px,calc(100vw - 28px));max-height:92dvh;overflow:auto;padding:25px;border:1px solid var(--line);border-radius:16px;box-shadow:0 30px 90px #153a3a30;color:inherit}dialog::backdrop{background:#10282b80}#deleteDialog{max-width:450px}.dialog-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:23px}.dialog-heading button{border:0}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:23px;padding-top:18px;border-top:1px solid var(--line)}.invoice-lines{overflow-x:auto}.invoice-lines table{min-width:640px}.invoice-lines td,.invoice-lines th{padding:7px}.invoice-lines input,.invoice-lines select{padding:8px;min-width:65px}.invoice-lines td:first-child{width:35%}.invoice-lines .line-desc{min-width:160px}.invoice-total{text-align:right;font-size:20px;font-weight:700;color:#0c7a71;padding:15px 0}.invoice-note{font-size:11px;color:var(--muted);padding:10px 0}.error{background:#fff0ee;color:#a23027;padding:12px 15px;border-radius:8px;margin:12px 0}.success{background:#e2f2eb;color:#146a49;padding:12px 15px;border-radius:8px;margin:12px 0}#recordCount{margin:13px 0}footer{margin:40px 0 20px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;display:flex;justify-content:space-between}.loading{padding:40px;text-align:center}.breakdown{padding:20px}.bar{height:7px;border-radius:10px;background:#e8f0ee;margin-top:9px}.bar span{height:100%;display:block;background:#239688;border-radius:10px}.nowrap{white-space:nowrap}
@media(min-width:1600px){.app main{padding-left:50px;padding-right:50px}.stats .stat{padding:28px}}
@media(max-width:1100px){.app{grid-template-columns:205px minmax(0,1fr)}.app main{padding:0 20px}.brand img{width:165px}.stats{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.actions{flex-wrap:wrap}.section-heading{align-items:flex-start}.stat strong{font-size:23px}}
@media(max-width:700px){.app{display:block}.sidebar{padding:17px;gap:16px;border-bottom:1px solid var(--line);border-right:0}.sidebar .brand img{width:155px}.workspace{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:4px;padding-bottom:4px}.sidebar nav button{white-space:nowrap;padding:9px;font-size:12px}.sidebar-bottom{display:flex;margin:0;padding:0;gap:18px}.sidebar-bottom small{margin-left:auto}.app main{padding:0 15px}.topbar{padding:20px 0;margin-bottom:20px}.topbar h1{font-size:22px}.top-actions span{max-width:95px;overflow:hidden;text-overflow:ellipsis}.section-heading{flex-direction:column;gap:13px}.stats{gap:9px}.stat{padding:16px}.stat strong{font-size:21px}.form-grid{grid-template-columns:1fr}.wide{grid-column:1}.filters{flex-wrap:wrap}.filters input{max-width:none}.filters select{max-width:60%}.filters button{margin-left:auto}.auth-wrap{display:block;margin:0;padding:22px}.auth-intro{padding:10px 0 30px}.auth-intro .brand{margin-bottom:25px}.auth-intro h1{font-size:32px}.auth-intro p,.intro-features{display:none}.auth-card{padding:25px}.auth-intro .eyebrow{margin-top:30px}.panel-heading{padding:17px}dialog{padding:20px}.company-form{padding:20px}}
@media print{.sidebar,.topbar,.filters,.dialog-actions,footer,button{display:none!important}.app{display:block}.app main{padding:0}.panel{border:0}}
