:root{--ink:#263b32;--muted:#79867e;--green:#277657;--green-dark:#193e30;--paper:#f7f8f4;--line:#e5e9e2;--soft:#eaf0e9;--red:#ad4439;--white:#fff;--radius:13px;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--paper);line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible{outline:3px solid #70b98c;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:38px;font-weight:570;letter-spacing:-1.5px;line-height:1.18;margin-bottom:12px;overflow-wrap:anywhere}h2{font-size:18px;letter-spacing:-.4px;font-weight:600;margin-bottom:10px}h3{font-size:18px;font-weight:550}p{margin-bottom:14px}.muted{color:var(--muted)}.strong{font-weight:600}.right{text-align:right}.block{display:block}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.error-text{color:var(--red)}.heading-dot{color:var(--green)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#879087;margin-bottom:16px}.sidebar{position:fixed;inset:0 auto 0 0;width:228px;background:var(--green-dark);color:#e7eee5;display:flex;flex-direction:column;padding:32px 18px 18px;z-index:5}.brand{display:flex;align-items:center;font-size:22px;font-weight:650;letter-spacing:-1px;white-space:nowrap;padding:0 8px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:#d5eac2;color:var(--green-dark);width:32px;height:34px;border-radius:9px 9px 9px 0;margin-right:10px;font-size:26px;font-weight:700;letter-spacing:-3px}.brand-mark span{font-size:16px;margin-top:-11px;padding-right:2px}.brand-light{font-weight:350}.workspace-label{font-size:9px;letter-spacing:2px;color:#8ba594;margin:40px 14px 14px}nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:7px;margin:4px 0;color:#b6c8ba;font-size:13px}nav a:hover,nav a.active{color:#fff;background:#2b513f}nav a.active{box-shadow:inset 2px 0 #c2d99b}.nav-icon{width:19px;font-size:20px;line-height:1;color:#a5bdac}.nav-separator{font-size:9px;letter-spacing:2px;color:#8ba594;margin:30px 14px 13px}.sidebar-bottom{margin-top:auto;padding-top:24px}.workspace-note{font-size:11px;color:#c4d4c5;line-height:1.9;padding:17px 12px 22px}.workspace-note span:not(.online-dot){color:#88a792;padding-left:15px}.online-dot{display:inline-block;background:#b9d38c;width:5px;height:5px;border-radius:50%;margin-right:7px}.settings-link{display:block;padding:10px 13px;color:#b6c8ba;font-size:12px}.profile{border-top:1px solid #3a5746;margin-top:14px;padding:20px 6px 0;display:flex;align-items:center;gap:10px;font-size:12px}.avatar{display:inline-grid;place-items:center;background:#d2d9bf;color:#365042;width:34px;height:34px;border-radius:50%;font-weight:600}.profile small{display:block;font-size:10px;color:#89a893}.profile-arrow{margin-left:auto;color:#89a893}.main{margin-left:228px;padding:0 44px;max-width:1900px;min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;height:75px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.9px;color:#8a948b;margin-bottom:35px}.topbar-divider{color:#cbd2c7;margin:0 12px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:30px}.page-heading p{color:var(--muted);font-size:13px;margin:0}.button{border:1px solid transparent;border-radius:7px;min-height:40px;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:550;line-height:1.3;white-space:nowrap;transition:background .15s}.button.primary{background:var(--green);color:#fff;box-shadow:0 2px 3px #1c4f2512}.button.primary:hover{background:#1c6246}.button.secondary{background:#fff;border-color:#dce2d7;color:#465b4c}.button.secondary:hover{background:#f0f4ee}.button.danger{background:#fcf4f1;border-color:#f0d9d1;color:var(--red)}.button.small{min-height:33px;padding:7px 12px;font-size:11px}.button.full{width:100%;justify-content:space-between}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px;overflow:hidden;min-width:0}.padded{padding:27px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:25px 26px 18px}.card-heading h2{margin:0 0 5px}.card-heading p{font-size:12px;color:var(--muted);margin:0}.card-heading.flush{padding:0 0 16px}.text-link{font-size:12px;color:var(--green);font-weight:550}.text-link:hover{text-decoration:underline}.muted-link{font-size:12px;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:30px}.stats-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:23px;min-width:0}.stat.featured{background:#eaf0e2;border-color:#dce5cf}.stat-label{display:flex;justify-content:space-between;font-size:11px;color:#71816e;margin-bottom:19px}.stat-label span{font-size:18px;line-height:1;color:#83957a}.stat>strong{display:block;font-size:31px;font-weight:550;letter-spacing:-1.1px;line-height:1.25;overflow-wrap:anywhere}.stat small{display:block;color:#94a08b;font-size:10px;margin-top:12px}.stat .date-stat{font-size:26px}.dashboard-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start}.activity-list{padding:0 25px 9px}.activity{display:flex;align-items:center;gap:12px;padding:17px 0;border-top:1px solid #f0f2ec}.activity>div{flex:1;min-width:0}.activity strong{font-size:12px;font-weight:550}.activity small{display:block;color:#8a958b;font-size:10px;max-width:290px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-symbol{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#f1eadb;color:#938051;flex-shrink:0;font-size:14px}.project-symbol.soft{background:#e9efe5;color:#698366}.project-symbol.large{width:43px;height:43px;font-size:20px}.project-row{display:flex;align-items:center;gap:12px;padding:18px 25px;border-top:1px solid #f0f2ec;font-size:12px}.project-row:hover{background:#fafbf7}.project-row>div{flex:1;min-width:0}.project-row strong{font-weight:550}.project-row small{display:block;color:#98a095;font-size:10px}.project-row>span:last-child{color:#8d9b86}.empty{text-align:center;padding:38px 22px 45px}.empty-icon{display:inline-grid;place-items:center;width:44px;height:44px;background:#f0f3e9;color:#87977b;border-radius:50%;font-size:24px;margin-bottom:16px}.empty h3{margin-bottom:8px;color:#506149;font-size:16px}.empty p{color:#909b8b;font-size:12px;max-width:360px;margin:0 auto 20px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{font-size:10px;font-weight:550;color:#849180;letter-spacing:.35px;text-align:left;padding:13px 25px;background:#fafbf7;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:17px 25px;border-bottom:1px solid #f0f2ec;vertical-align:middle}td small{font-size:10px;margin-top:3px}tr:last-child td{border-bottom:0}.badge{display:inline-block;border-radius:20px;padding:4px 10px;background:#f0f2ed;color:#788270;font-size:10px;text-transform:capitalize;white-space:nowrap}.badge.active,.badge.paid,.badge.accepted,.badge.delivered,.badge.billable{background:#ebf4e8;color:#518157}.badge.overdue,.badge.failed,.badge.bounced,.badge.complained{background:#f9ebe4;color:#b47b58}.badge.unpaid,.badge.issued,.badge.sent{background:#f3f1df;color:#969052}.badge.partially_paid,.badge.pending,.badge.sending,.badge.uncertain{background:#f9f1df;color:#9f834c}.badge.draft,.badge.captured{background:#edf0f4;color:#77879b}.setup-banner{background:#edf2e9;border:1px solid #dce6d4;padding:21px 24px;border-radius:var(--radius);margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:13px}.setup-banner p{margin:4px 0 0;font-size:12px;color:#7e8c73}.app-footer{display:flex;justify-content:space-between;font-size:10px;color:#a0a99b;padding:25px 0 30px;margin-top:26px;border-top:1px solid var(--line)}.back-link{display:inline-block;font-size:12px;color:var(--muted);margin-bottom:22px}.form-card{padding:28px;max-width:690px}.form-card.wide{max-width:none}.field{display:block;margin-bottom:21px;font-size:12px;min-width:0}.field>span{display:block;color:#51614d;margin-bottom:7px;font-weight:500}.required{color:#89a173;margin-left:4px}.field small{display:block;color:#95a08b;font-size:10px;margin-top:6px}input,select,textarea{display:block;width:100%;border:1px solid #dce2d5;background:#fff;border-radius:6px;padding:10px 11px;min-height:41px;color:#354a39;outline:none}input:focus,select:focus,textarea:focus{border-color:#7ba77a;box-shadow:0 0 0 3px #eaf2e4}input::placeholder,textarea::placeholder{color:#b1b9a9}textarea{resize:vertical;line-height:1.6}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.check{display:flex;align-items:center;gap:9px;font-size:12px;margin:13px 0 22px}.check input,input[type=checkbox]{width:16px;height:16px;min-height:16px;accent-color:var(--green);flex-shrink:0}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:21px;border-top:1px solid var(--line);margin-top:27px;font-size:11px}.form-error,.alert{border-radius:7px;padding:15px 18px;background:#f7f2e6;color:#8e7b4e;font-size:12px;margin:18px 0;white-space:pre-wrap}.form-error,.alert.error{background:#f9ece7;color:#a6614d}.alert a{text-decoration:underline}.section-title{border-top:1px solid var(--line);padding-top:26px;margin-top:14px;margin-bottom:20px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{padding:26px;margin:0}.project-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}.project-card h2{margin-bottom:4px;overflow-wrap:anywhere}.project-card p{font-size:12px}.project-description{min-height:42px;color:#8e9986;overflow-wrap:anywhere}.project-metrics{display:flex;justify-content:space-between;border-top:1px solid #eff2ea;padding:18px 0}.project-metrics small{display:block;font-size:10px;color:#96a08d;margin-bottom:4px}.project-metrics strong{font-size:18px;font-weight:550}.project-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eff2ea;padding-top:17px}.week-summary{display:flex;align-items:center;justify-content:space-between;background:#edf2e5;border:1px solid #dde6d1;border-radius:var(--radius);padding:18px 21px;margin-bottom:24px;font-size:13px}.week-summary>div{display:flex;align-items:center;gap:15px}.week-summary small{font-weight:400;font-size:10px;color:#8b967e}.week-summary>strong{font-size:18px;font-weight:550}.icon-button{display:inline-flex;justify-content:center;align-items:center;width:30px;min-width:30px;height:30px;background:transparent;border:1px solid #dfe5d6;color:#819073;border-radius:6px;font-size:17px;padding:0}.icon-button:hover{background:#eef2e7}.filters{display:flex;gap:15px;align-items:flex-end;padding:22px 25px;border-bottom:1px solid var(--line);flex-wrap:wrap}.filters label{font-size:10px;color:#8a9581;flex:1;min-width:125px}.filters input,.filters select{font-size:11px;margin-top:6px}.line-editor{table-layout:fixed;margin-bottom:18px}.line-editor th,.line-editor td{padding:10px 7px}.line-editor th:first-child{width:40%}.line-editor th:nth-child(2){width:13%}.line-editor th:nth-child(3){width:13%}.line-editor th:nth-child(4){width:16%}.line-editor th:nth-child(5){width:12%}.line-editor th:last-child{width:6%}.line-editor input,.line-editor select,.line-editor textarea{font-size:12px;padding:9px 7px}.line-editor td{vertical-align:top}.time-choice{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #eef1e8;font-size:12px}.time-choice>span{flex:1}.time-choice small{display:block;color:#8d9a83;font-size:10px}.time-choice input{margin:0}.document-actions{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:25px}.document-meta{display:flex;gap:40px;padding:25px;border-bottom:1px solid var(--line);flex-wrap:wrap}.document-meta small{display:block;font-size:10px;color:#8b9681;margin-bottom:5px}.document-meta strong{font-size:12px;font-weight:500}.invoice-total{margin:23px 25px 26px auto;width:300px;max-width:calc(100% - 50px)}.invoice-total>div{display:flex;justify-content:space-between;padding:8px 0;font-size:12px;color:#89947d}.invoice-total strong{color:var(--ink);font-weight:550}.invoice-total .grand{font-size:19px;border-top:1px solid #cfdcc5;margin-top:6px;padding-top:16px;color:var(--ink)}.document-notes{padding:0 25px 25px;font-size:12px}.payment-summary{display:flex;justify-content:space-between;background:#f4f6ee;padding:15px;border-radius:7px;font-size:11px;margin:18px 0}.payment-summary strong{display:block;margin-top:5px;font-size:19px;font-weight:550}.payment-row{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid #f0f2eb;font-size:12px}.attention-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 25px;border-top:1px solid #f0f2eb;font-size:12px;overflow-wrap:anywhere}.attention-row:hover{background:#fcfcf8}.toast{position:fixed;top:22px;right:25px;max-width:450px;z-index:20;padding:17px 23px;color:#fff;background:#2d6345;border-radius:8px;box-shadow:0 6px 26px #18312524;white-space:pre-wrap}.toast.error{background:#9e5c47}.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-story{background:var(--green-dark);padding:58px 65px;color:#eff3e8;display:flex;flex-direction:column;justify-content:space-between}.login-story .brand{padding:0}.login-story .eyebrow{color:#a2bb92;font-size:10px}.login-story h1{font-size:66px;line-height:1.1;font-weight:400;letter-spacing:-3px;margin:25px 0}.login-story p{color:#a4b79d;font-size:15px;line-height:1.9}.login-footnote{color:#839e79;font-size:11px}.login-panel{display:grid;place-items:center;padding:50px}.login-form{width:100%;max-width:350px}.login-form h2{font-size:31px;letter-spacing:-1px;margin-bottom:10px;font-weight:500}.login-form>p{font-size:13px;margin-bottom:33px}.login-form .button{margin-top:10px}.login-help{font-size:11px!important;color:#9ba48f;line-height:1.8;margin-top:25px}.error-page{max-width:620px;margin:15vh auto;padding:35px}.error-page p{color:#869379}.error-page h1{font-size:30px}code{font-size:12px;word-break:break-all}input[type=file]{margin:18px 0}
@media(min-width:1600px){.main{padding:0 65px}.page-heading{margin-top:45px}.stat{padding:29px}}
@media(max-width:1150px){.main{padding:0 26px}.sidebar{width:205px;padding-left:12px;padding-right:12px}.main{margin-left:205px}.brand{font-size:20px}.stats-grid{gap:12px}.stat{padding:17px}.stat>strong{font-size:26px}.dashboard-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}td,th{padding-left:17px;padding-right:17px}}
@media(max-width:760px){.sidebar{position:static;width:100%;padding:15px 18px 8px}.brand{font-size:21px}.workspace-label,.sidebar-bottom,.nav-separator{display:none}nav{display:flex;overflow-x:auto;gap:5px;margin-top:14px}nav a{font-size:11px;padding:8px 10px;gap:5px;white-space:nowrap;flex-shrink:0}.nav-icon{font-size:17px;width:16px}.main{margin:0;padding:0 18px}.topbar{height:50px;margin-bottom:25px;font-size:8px}.page-heading{align-items:flex-start;margin-bottom:23px}.page-heading h1{font-size:29px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:10px}.page-heading p{font-size:11px}.page-heading .button{font-size:10px;padding:10px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat>strong{font-size:26px}.stat-label{font-size:10px;margin-bottom:13px}.stat{padding:17px}.stat small{font-size:9px}.project-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-card{padding:22px}.form-actions{flex-wrap:wrap}.week-summary{flex-direction:column;gap:12px;font-size:11px}.setup-banner{flex-direction:column;align-items:flex-start}.line-editor{min-width:660px}.card-heading{padding:20px}.card-heading h2{font-size:16px}.card-heading .text-link{font-size:10px}.filters{padding:17px;gap:10px}.filters label{min-width:calc(50% - 10px)}.document-meta{gap:17px}.app-footer{font-size:9px}.login-layout{grid-template-columns:1fr}.login-story{padding:25px 30px}.login-story>div,.login-footnote{display:none}.login-panel{padding:50px 25px}.toast{top:15px;left:15px;right:15px;max-width:none}.attention-row{padding:16px;flex-wrap:wrap}}

.mobile-account-links{display:none}
@media(max-width:760px){.sidebar{position:relative}.mobile-account-links{display:flex;gap:13px;position:absolute;right:20px;top:25px;font-size:11px;color:#c5d5c5}}
