:root{--navy:#262044;--navy2:#17132d;--blue:#0b69c7;--blue-soft:#e8f3fd;--cyan:#5dc5e8;--bg:#f5f6f8;--line:#e1e4e9;--text:#17171a;--muted:#686b73;--green:#168463;--amber:#c77718;--shadow:0 10px 35px rgba(18,18,22,.10);font-family:Aptos,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:11px;color:#4e83b7}.muted{color:var(--muted)}
.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(380px,45%) 1fr;background:#fff}.login-brand{position:relative;overflow:hidden;padding:48px 7vw;color:#fff;background:linear-gradient(145deg,#0d1c34,#193d69)}.login-brand:before,.login-brand:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.1);border-radius:50%}.login-brand:before{width:560px;height:560px;right:-270px;bottom:-190px}.login-brand:after{width:350px;height:350px;right:-145px;bottom:-85px}.brand-lockup{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:600;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:linear-gradient(145deg,#5b8cff,#235ad1);color:white;font-family:Georgia,serif;font-weight:bold;font-size:22px;box-shadow:0 5px 16px rgba(26,75,177,.35)}.brand-lockup b{font-size:12px;background:#fff;color:var(--navy);padding:3px 5px;border-radius:4px;margin-left:3px}.login-message{position:absolute;z-index:1;left:7vw;right:6vw;top:43%;transform:translateY(-50%)}.login-message .eyebrow{color:#8eb5f8}.login-message h1{max-width:590px;font-size:clamp(38px,4.4vw,68px);line-height:1.03;letter-spacing:-.045em;margin:17px 0 24px}.login-message p{font-size:18px;line-height:1.7;max-width:530px;color:#c6d3e8}.brand-foot{position:absolute;bottom:45px;color:#91a5c2;font-size:12px;letter-spacing:.04em}.login-panel{display:grid;place-items:center;padding:40px;background:linear-gradient(145deg,#fff,#f7f9fc)}.login-card{width:min(430px,100%)}.mobile-brand{display:none}.login-card h2{font-size:30px;letter-spacing:-.03em;margin:10px 0 5px}.login-card>p{margin-top:0;margin-bottom:32px}.login-card label,.form-grid label{display:block;font-weight:650;font-size:13px;margin:18px 0;color:#344158}.login-card input,.form-grid input{width:100%;margin-top:8px;border:1px solid #ccd3dd;border-radius:8px;padding:13px 14px;outline:none;background:#fff;transition:.18s}.login-card input:focus,.form-grid input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.12)}.password-wrap{display:flex;align-items:center;position:relative}.password-wrap input{padding-right:65px}.password-wrap button{position:absolute;right:10px;border:0;background:none;color:var(--blue);font-size:12px;font-weight:700}.primary{border:0;color:#fff;background:var(--blue);border-radius:8px;padding:11px 17px;font-weight:700;box-shadow:0 3px 8px rgba(37,99,235,.22)}.primary:hover{background:#1d55ce}.wide{width:100%;padding:14px}.security-note{text-align:center!important;margin:20px 0 0!important;font-size:12px!important;color:#7d8798}.security-note span{color:var(--green)}.form-error{min-height:18px;color:#b42318;font-size:13px;margin:8px 0}
.app{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:var(--navy);color:#d6dfec;padding:22px 14px;display:flex;flex-direction:column;z-index:20}.sidebar .brand-lockup{padding:0 10px 27px;color:white}.sidebar nav{display:grid;gap:4px}.nav-heading{text-transform:uppercase;letter-spacing:.12em;color:#66809f;font-size:10px;font-weight:700;padding:22px 12px 7px}.nav-item{width:100%;border:0;background:none;color:#aebdd0;border-radius:7px;padding:10px 11px;display:flex;align-items:center;gap:11px;text-align:left;font-size:13px}.nav-item span{font-size:17px;width:20px;text-align:center}.nav-item em{font-style:normal;font-size:9px;text-transform:uppercase;letter-spacing:.08em;margin-left:auto;color:#657e9d}.nav-item:not(:disabled):hover,.nav-item.active{background:#203956;color:#fff}.nav-item.active-module{color:#fff}.nav-item.active-module span{color:#7ca7ff}.sidebar-bottom{margin-top:auto}.user-card{border-top:1px solid #2a405e;margin-top:12px;padding:18px 8px 3px;display:flex;align-items:center;gap:10px}.user-card strong{display:block;color:#fff;font-size:12px}.user-card small{display:block;color:#7f96b3;font-size:10px;margin-top:3px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#34588a;color:white;font-weight:700;font-size:11px}.workspace{grid-column:2;min-width:0}.topbar{height:65px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:10}.menu-button{display:none}.global-search{display:flex;align-items:center;gap:9px;width:min(470px,45vw);border:1px solid var(--line);background:#f8fafc;border-radius:7px;padding:8px 11px}.global-search input{border:0;outline:0;background:none;flex:1;font-size:12px}.global-search kbd{font-size:9px;color:#8a94a4;border:1px solid #d9dfe7;border-radius:4px;padding:2px 5px;background:#fff}.top-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.top-actions>button{border:0;background:none;color:#596579;padding:8px}.profile-button{display:flex;align-items:center;gap:8px!important;border-left:1px solid var(--line)!important;margin-left:6px;font-size:12px}.avatar.small{width:29px;height:29px}.profile-menu{position:fixed;right:27px;top:58px;width:220px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow);padding:16px;z-index:30}.profile-menu strong,.profile-menu small{display:block}.profile-menu small{color:var(--muted);margin:5px 0 12px}.profile-menu hr{border:0;border-top:1px solid var(--line)}.profile-menu button{border:0;background:none;color:#b42318;padding:7px 0}.content{padding:31px clamp(22px,3.4vw,52px) 50px;max-width:1550px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.page-heading h1{font-size:29px;letter-spacing:-.035em;margin:6px 0}.page-heading p{color:var(--muted);margin:0;font-size:13px}.breadcrumbs{color:#8390a3;font-size:11px;margin-bottom:9px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:19px;display:flex;gap:14px;align-items:center;min-height:112px}.stat-card.accent{border-top:3px solid var(--blue)}.stat-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:9px;background:var(--blue-soft);color:var(--blue);font-size:19px}.stat-icon.amber{background:#fff5e7;color:var(--amber)}.stat-icon.green{background:#e9f7f2;color:var(--green)}.stat-icon.grey{background:#f0f2f5;color:#697386}.stat-card span,.stat-card small{display:block;color:var(--muted);font-size:11px}.stat-card strong{display:block;font-size:25px;margin:4px 0}.home-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-top:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:16px;margin:0 0 4px}.panel-head p{font-size:11px;color:var(--muted);margin:0}.link-button{border:0;background:none;color:var(--blue);font-weight:650;font-size:12px}.record-item{padding:15px 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0f4}.record-item:last-child{border:0}.record-icon{width:36px;height:36px;border-radius:8px;background:#eef3fb;display:grid;place-items:center;color:#43658f}.record-body{flex:1}.record-body strong,.record-body small{display:block}.record-body strong{font-size:12px}.record-body small{font-size:10px;color:var(--muted);margin-top:4px}.quick-panel>button{width:100%;display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid var(--line);background:#fff;padding:18px 20px;text-align:left}.quick-panel>button:last-child{border:0}.quick-panel>button>span{width:32px;height:32px;display:grid;place-items:center;border-radius:7px;background:#eef3fb;color:var(--blue)}.quick-panel>button div{flex:1}.quick-panel>button strong,.quick-panel>button small{display:block}.quick-panel>button strong{font-size:12px}.quick-panel>button small{font-size:10px;color:var(--muted);margin-top:4px}.quick-panel>button:disabled{opacity:.55}
.module-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);margin-bottom:18px}.module-tabs button{border:0;background:none;padding:11px 14px;color:var(--muted);font-size:12px;font-weight:650;border-bottom:2px solid transparent}.module-tabs button.active{color:var(--blue);border-color:var(--blue)}.module-tabs span{margin-left:5px;padding:2px 6px;border-radius:10px;background:#e8ecf2;font-size:9px}.module-tabs button.active span{background:var(--blue-soft)}.register-panel{overflow:hidden}.table-tools{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.table-search{width:min(380px,70%);display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:7px;padding:7px 10px}.table-search input{border:0;outline:0;width:100%;font-size:11px}.table-tools>button,.modal-actions>button:not(.primary){border:1px solid var(--line);border-radius:7px;background:#fff;padding:8px 12px;color:#526076;font-size:11px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:750px}th{text-align:left;text-transform:uppercase;letter-spacing:.055em;font-size:9px;color:#8691a2;background:#fafbfc;padding:11px 18px}td{padding:15px 18px;border-top:1px solid #edf0f4;font-size:11px;color:#586579}td strong{display:block;color:var(--text);font-size:12px;margin-bottom:3px}.status{display:inline-flex;align-items:center;gap:5px;border-radius:12px;padding:4px 8px;text-transform:capitalize;font-size:9px;font-weight:700}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status.draft{color:#a96616;background:#fff4df}.status.finalised{color:#13775b;background:#e7f6f0}.status.archived{color:#687386;background:#eef0f3}.row-action{border:0;background:none;color:#778294;font-size:17px}.table-foot{padding:12px 18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#8a94a4;font-size:9px}.empty-state{text-align:center;padding:55px}.empty-state>div{font-size:31px;color:#92a7c4}.empty-state h3{margin:12px 0 6px}.empty-state p{color:var(--muted);font-size:12px}.empty-state button{margin-top:12px}
.modal-backdrop{position:fixed;inset:0;z-index:50;background:rgba(7,18,35,.58);display:grid;place-items:center;padding:20px}.modal{background:#fff;width:min(760px,100%);max-height:92vh;overflow:auto;border-radius:13px;padding:29px;box-shadow:0 30px 70px rgba(0,0,0,.24);position:relative}.modal-close{position:absolute;right:18px;top:15px;border:0;background:none;font-size:24px;color:#6c7788}.modal h2{font-size:24px;margin:8px 0}.modal>p{font-size:12px}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.choice{border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;cursor:pointer}.choice.active{border-color:var(--blue);background:#f6f9ff}.choice input{grid-row:1/3}.choice small{color:var(--muted);font-size:10px}.form-section{border-top:1px solid var(--line);padding-top:18px;margin-top:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.form-grid label{margin:12px 0}.form-grid input{padding:10px;margin-top:6px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.toast{position:fixed;right:25px;bottom:25px;z-index:80;color:#fff;background:#142640;padding:13px 18px;border-radius:8px;box-shadow:var(--shadow);font-size:12px}
@media(max-width:1000px){.stat-grid{grid-template-columns:repeat(2,1fr)}.home-grid{grid-template-columns:1fr}.login-screen{grid-template-columns:42% 58%}.login-message h1{font-size:42px}}@media(max-width:760px){.login-screen{display:block;background:#f6f8fb;padding:25px}.login-brand{display:none}.login-panel{min-height:calc(100vh - 50px);border-radius:15px;padding:25px}.mobile-brand{display:flex;align-items:center;gap:10px;font-weight:700;margin-bottom:45px}.app{display:block}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.workspace{min-width:0}.topbar{padding:0 16px}.menu-button{display:block;border:0;background:none;margin-right:10px}.global-search{width:46px;border:0;background:none}.global-search input,.global-search kbd{display:none}.profile-button>span:not(.avatar){display:none}.content{padding:22px 16px}.page-heading{align-items:flex-start;gap:16px}.page-heading h1{font-size:23px}.page-heading p{display:none}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:13px;min-height:92px}.stat-icon{display:none}.home-grid{margin-top:12px}.form-grid{grid-template-columns:1fr}.choice-row{grid-template-columns:1fr}.module-tabs{overflow-x:auto}.module-tabs button{white-space:nowrap}.top-actions>button:not(.profile-button){display:none}}@media(max-width:430px){.stat-grid{grid-template-columns:1fr 1fr}.stat-card strong{font-size:21px}.login-panel{padding:18px}.page-heading .primary{font-size:0}.page-heading .primary:after{content:"＋";font-size:18px}}

/* Titus Tax & Accounting brand system */
.login-brand{background:linear-gradient(145deg,#17132d,#2b2550)}
.login-brand:before,.login-brand:after{border-radius:12px;transform:rotate(45deg);border-color:rgba(93,197,232,.16)}
.brand-lockup{gap:10px;letter-spacing:0}
.brand-lockup img{display:block;width:154px;height:auto;filter:none}
.login-brand .brand-lockup img,.sidebar .brand-lockup img{filter:drop-shadow(0 3px 9px rgba(0,0,0,.22))}
.brand-lockup b,.mobile-brand b{font-size:11px;letter-spacing:.14em;background:var(--blue);color:#fff;padding:4px 6px;border-radius:4px;margin-left:0}
.login-brand .brand-lockup{background:#fff;width:max-content;padding:10px 14px;border-radius:9px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.login-message .eyebrow{color:var(--cyan)}
.login-message p{color:#d9d5eb}
.brand-foot{color:#aaa5c6}
.sidebar{background:linear-gradient(180deg,#201b3d,#151226);border-right:3px solid var(--blue)}
.sidebar .brand-lockup{background:#fff;margin:-5px -2px 17px;padding:9px 8px 9px;border-radius:8px}
.sidebar .brand-lockup img{width:142px}
.sidebar .brand-lockup b{margin-left:auto}
.nav-item:not(:disabled):hover,.nav-item.active{background:#312953}
.nav-item.active-module span{color:var(--cyan)}
.avatar{background:var(--blue)}
.primary{background:var(--blue);box-shadow:0 3px 8px rgba(11,105,199,.24)}
.primary:hover{background:#075baF}
.mobile-brand img{width:178px;height:auto}
.mobile-brand{justify-content:space-between}
