@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0b1530;--navy2:#111f3d;--blue:#2563eb;--cyan:#06b6d4;--ink:#17233b;--muted:#718096;--line:#e7edf5;--bg:#f4f7fb;--white:#fff;--green:#0f9f75;--red:#dc4658}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:flex}.sidebar{width:254px;background:linear-gradient(180deg,#0b1530,#111f3d);color:#d7e1f2;padding:25px 17px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}.brand{display:flex;gap:12px;align-items:center;color:#fff;font:800 15px Manrope;letter-spacing:.4px}.brand small{display:block;color:#7e91b4;font:600 9px Inter;letter-spacing:2px;margin-top:3px}.blue{color:#4ea5ff}.brandmark{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#3b82f6,#06b6d4);display:grid;place-items:center;color:white;font:800 20px Manrope;box-shadow:0 10px 25px #2563eb44}.brandmark.small{width:37px;height:37px;border-radius:11px;font-size:15px}.workspace{margin:30px 2px 20px;padding:11px 12px;background:#ffffff0d;border:1px solid #ffffff13;border-radius:10px;color:#aebbd0;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c995;margin-right:8px}.navlabel{font-size:9px;letter-spacing:1.6px;color:#647b9f;font-weight:700;margin:17px 10px 8px}.navitem{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;color:#aab9d1;font-size:12px;font-weight:600;margin:3px 0;transition:.2s}.navitem>span{width:17px;text-align:center;font-size:16px}.navitem:hover,.navitem.active{background:linear-gradient(90deg,#2563eb55,#2563eb12);color:#fff}.navitem.active{box-shadow:inset 2px 0 #3b82f6}.sidebottom{margin-top:auto}.userchip{display:flex;align-items:center;gap:10px;border-top:1px solid #ffffff18;padding:17px 5px 12px}.avatar{width:31px;height:31px;border-radius:50%;background:#24477d;display:grid;place-items:center;color:white;font-weight:700}.userchip b,.userchip small{display:block}.userchip b{font-size:11px;color:white}.userchip small{font-size:10px;color:#8194b2;margin-top:3px}.main{margin-left:254px;width:calc(100% - 254px);padding:0 34px 22px;min-height:100vh}.topbar{height:88px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-bottom:25px}.eyebrow{font-size:9px;font-weight:800;letter-spacing:1.6px;color:#8b9bb1}.topbar h2{font:800 21px Manrope;margin:5px 0 0;color:var(--navy)}.topactions{display:flex;align-items:center;gap:18px}.lang{padding:8px 11px;border:1px solid var(--line);border-radius:8px;font-size:11px;font-weight:700}.secure{font-size:10px;color:#7b8da5}.secure:first-letter{color:#10b981}.welcome{background:radial-gradient(circle at 90% 10%,#1c5caa 0,transparent 34%),linear-gradient(115deg,#0b1530,#142d55);padding:27px 30px;border-radius:16px;color:#fff;display:flex;align-items:center;justify-content:space-between;min-height:158px;box-shadow:0 12px 30px #0b15301c}.welcome h1{font:800 25px Manrope;margin:8px 0}.welcome p{margin:0;color:#b5c8e5;font-size:12px}.eyebrow.light{color:#70c8ef}.btn{border:0;border-radius:8px;padding:11px 15px;font:700 11px Inter;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn.primary{background:linear-gradient(110deg,#2563eb,#087fca);color:#fff;box-shadow:0 5px 14px #2563eb2b}.btn.white{background:#fff;color:#15345f}.btn.ghost{background:#f5f8fc;color:#52647d;border:1px solid var(--line)}.btn.small{padding:8px 11px}.btn.wide{width:100%;margin-top:8px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:19px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 18px;box-shadow:0 3px 12px #13294b05}.stat span,.stat small{display:block;color:#8190a5;font-size:10px}.stat strong{display:block;font:800 22px Manrope;color:#10203d;margin:10px 0 5px}.stat small{font-size:9px}.grid{display:grid;gap:17px}.grid.two{grid-template-columns:1.2fr 1fr}.alignstart{align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:19px;box-shadow:0 4px 16px #10244806;min-width:0}.cardhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.cardhead h3,.linehead h3{font:800 14px Manrope;margin:0;color:#142341}.cardhead p{font-size:10px;color:#8a98aa;margin:5px 0 0}.textlink{font-size:10px;color:#2563eb;font-weight:700}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#94a1b3;font-size:9px;text-transform:uppercase;letter-spacing:.7px;padding:10px 9px;border-bottom:1px solid var(--line)}td{padding:12px 9px;border-bottom:1px solid #f0f3f8;font-size:10px;color:#42516a}td b{color:#172744;font-size:10px}td small.subtext{display:block;color:#9aa6b7;font-size:9px;margin-top:4px}.badge{display:inline-block;padding:5px 8px;border-radius:20px;font-size:8px;font-weight:700;background:#edf2f8;color:#61718a}.badge.paid,.badge.accepted,.badge.validated{background:#e5f8f1;color:#0a936b}.badge.partial,.badge.sent,.badge.issued{background:#eaf2ff;color:#2563eb}.badge.overdue,.badge.cancelled,.badge.rejected,.badge.void{background:#fff0f1;color:#d64055}.empty{text-align:center;color:#98a5b6;padding:25px!important}.quicklinks a{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid #f0f3f8}.quicklinks a:last-child{border:0}.quickicon{width:34px;height:34px;border-radius:10px;background:#edf4ff;color:#2563eb;display:grid;place-items:center;font-size:16px}.quicklinks b,.quicklinks small{display:block}.quicklinks b{font-size:10px}.quicklinks small{font-size:9px;color:#94a1b3;margin-top:4px}.quicklinks i{margin-left:auto;color:#91a2b8;font-style:normal}.formcard{padding:22px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.formgrid.single{grid-template-columns:1fr}.formgrid label,.noteslabel{display:flex;flex-direction:column;gap:7px;color:#596a82;font-size:10px;font-weight:700}.formgrid input,.formgrid select,.formgrid textarea,.noteslabel textarea{width:100%;border:1px solid #e1e8f1;border-radius:8px;padding:11px 12px;color:#24344e;background:#fff;font:11px Inter;outline:none}.formgrid input:focus,.formgrid select:focus,.formgrid textarea:focus{border-color:#70a4f8;box-shadow:0 0 0 3px #2563eb12}.formactions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.narrow{max-width:540px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px}.filtertabs{display:flex;gap:6px;flex-wrap:wrap}.filtertabs a{font-size:9px;color:#718096;padding:8px 10px;border-radius:7px;background:#fff;border:1px solid var(--line)}.filtertabs a.selected{color:#2563eb;border-color:#b8d2fb;background:#eff6ff}.linehead{display:flex;align-items:center;justify-content:space-between;margin:23px 0 12px}.entrytable input{width:100%;min-width:90px;border:1px solid #e2e9f2;border-radius:6px;padding:8px;font:10px Inter}.entrytable td{padding:7px 5px}.remove{border:0;background:#fff0f1;color:#d64055;border-radius:6px;padding:6px 9px;cursor:pointer}.noteslabel{margin-top:15px}.alert{padding:12px 14px;border-radius:8px;margin-bottom:15px;font-size:11px}.alert.success{background:#e9f9f2;color:#0b8d68}.alert.danger,.error{background:#fff0f1;color:#c43d50}.actions{white-space:nowrap}.actions a,.dangerlink{font-size:10px;color:#2563eb;font-weight:700}.dangerlink{color:#d64055}.invoice-paper{background:white;max-width:850px;margin:0 auto;padding:55px 60px;min-height:950px;box-shadow:0 5px 30px #10244812;color:#1c2b43}.invoicehead{display:flex;justify-content:space-between;gap:25px}.invoicehead h1{font:800 22px Manrope;margin:7px 0}.invoicehead p,.doclabel p,.billto p{font-size:10px;line-height:1.7;color:#738198}.invoice-logo{max-width:95px;max-height:55px;object-fit:contain}.doclabel{text-align:right}.doclabel span{font-size:10px;letter-spacing:2px;color:#2563eb;font-weight:800}.doclabel h2{font:800 22px Manrope;margin:8px 0}.invoice-paper hr{border:0;border-top:2px solid #e8eef7;margin:25px 0}.billto small{font-size:9px;letter-spacing:1.4px;color:#8392a7;font-weight:800}.billto h3{font:800 15px Manrope;margin:7px 0}.paper-table{margin-top:28px}.paper-table th{background:#f3f6fb;color:#61718a;padding:13px}.paper-table td{padding:13px 10px;font-size:10px}.totals{width:300px;margin:25px 0 0 auto}.totals div{display:flex;justify-content:space-between;padding:7px 0;font-size:10px;color:#65748a}.totals b{color:#20314e}.totals .grand{border-top:1px solid #dfe7f1;border-bottom:1px solid #dfe7f1;margin:5px 0;padding:13px 0;font-size:13px;color:#10203d}.totals .grand b{font:800 17px Manrope;color:#2563eb}.paper-notes{margin-top:55px;font-size:10px;color:#586982}.paper-notes p{line-height:1.6}.invoice-paper footer{border-top:1px solid #e9eef5;margin-top:55px;padding-top:15px;color:#92a0b2;font-size:9px;text-align:center}.auth{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#1e4b84 0,transparent 30%),linear-gradient(135deg,#08132b,#142e53);padding:20px}.authbox{width:min(430px,100%);background:white;border-radius:18px;padding:35px;box-shadow:0 25px 80px #0004}.authbox .brandmark{margin-bottom:20px}.authbox h1{font:800 23px Manrope;color:#10203d;margin:8px 0}.authbox>p{color:#8593a7;font-size:11px;margin:0 0 23px}.authbox label{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:700;color:#65748a;margin:13px 0}.authbox input{padding:12px;border:1px solid #e2e8f0;border-radius:8px;font:12px Inter}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{border:1px solid #e4eaf2;background:#f7f9fc;padding:8px 12px;border-radius:7px;font-size:10px;cursor:pointer}.authfoot{text-align:center;color:#a0aaba;font-size:9px;margin-top:20px}.auth .eyebrow{margin-top:8px}.auth .alert{margin:12px 0}footer{padding:24px 3px 4px;color:#9ba8b9;font-size:9px}footer span{padding:0 5px;color:#c1cad6}.footright{float:right}.secure{white-space:nowrap}@media(max-width:1050px){.sidebar{width:215px}.main{margin-left:215px;width:calc(100% - 215px);padding:0 22px}.stats{grid-template-columns:repeat(2,1fr)}.grid.two{grid-template-columns:1fr}}@media(max-width:700px){.sidebar{width:62px;padding:15px 7px}.brand>span:not(.brandmark),.workspace,.navlabel,.navitem:not(.active),.navitem.active{font-size:0}.brand{justify-content:center}.brandmark.small{width:40px;height:40px}.navitem{justify-content:center;padding:12px 5px}.navitem>span{font-size:17px}.userchip{justify-content:center}.userchip>div:not(.avatar){display:none}.sidebottom .navitem{font-size:0}.main{margin-left:62px;width:calc(100% - 62px);padding:0 12px}.topbar{height:75px}.topbar h2{font-size:17px}.secure{display:none}.welcome{padding:20px;display:block}.welcome h1{font-size:20px}.welcome .btn{margin-top:16px}.stats{gap:8px}.stat{padding:13px}.stat strong{font-size:17px}.formgrid{grid-template-columns:1fr}.formactions{grid-column:1}.invoice-paper{padding:25px 18px;min-height:0}.invoicehead{display:block}.doclabel{text-align:left;margin-top:18px}.totals{width:100%}.toolbar{align-items:flex-start;flex-direction:column}.footright{display:none}}@media print{body{background:#fff}.sidebar,.topbar,footer,.no-print,.alert{display:none!important}.main{margin:0;padding:0;width:100%}.invoice-paper{box-shadow:none;margin:0;max-width:none;padding:12mm;min-height:0}.shell{display:block}.invoice-paper footer{display:block!important}@page{size:A4;margin:0}}

/* V0.3 Premium SaaS components */
.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.template-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px;box-shadow:0 4px 18px #10244808;display:flex;flex-direction:column;gap:11px}.template-preview{height:155px;background:var(--tpl-surface);border:1px solid #e6ebf2;border-radius:8px;padding:15px;color:var(--tpl-text);position:relative;overflow:hidden}.tpl-top{display:flex;justify-content:space-between;align-items:center}.tpl-top i{width:28px;height:7px;border-radius:5px;background:var(--tpl-accent)}.tpl-top b{font-size:7px;letter-spacing:1px;color:var(--tpl-accent)}.tpl-brand{font:800 13px Manrope;margin-top:14px}.tpl-brand strong{color:var(--tpl-accent)}.tpl-rule{height:3px;background:var(--tpl-accent);margin:9px 0 12px;border-radius:3px}.tpl-lines i{display:block;height:4px;background:#9aa8ba55;margin:7px 0;border-radius:4px;width:72%}.tpl-lines i:nth-child(2){width:90%}.tpl-lines i:nth-child(3){width:55%}.tpl-total{position:absolute;right:15px;bottom:17px;width:60px;height:17px;border-radius:4px;background:var(--tpl-accent)}.template-meta{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.template-meta b,.template-meta small{display:block}.template-meta b{font-size:11px;color:#1d2b45}.template-meta small{font-size:9px;color:#8a98aa;margin-top:4px}.template-card button{align-self:stretch}.welcome.compact{min-height:125px;margin-bottom:18px}.plan-current{background:#ffffff18;border:1px solid #ffffff30;border-radius:12px;padding:14px 18px;min-width:150px}.plan-current small,.plan-current b,.plan-current span{display:block}.plan-current small{font-size:8px;letter-spacing:1px;color:#a9c1e1}.plan-current b{font:800 17px Manrope;margin:7px 0}.plan-current span{font-size:9px;color:#9ee7cf}.plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.plan-card{padding:20px}.plan-card.featured{border-color:#7aa8f5;box-shadow:0 8px 24px #2563eb18}.plan-label{font-size:9px;text-transform:uppercase;letter-spacing:1.4px;color:#7d8da5;font-weight:800}.plan-card h2{font:800 18px Manrope;margin:8px 0}.plan-price{font:800 22px Manrope;color:#142341;margin:12px 0}.plan-price small{font:500 9px Inter;color:#8b98a9}.plan-card ul{padding-left:16px;min-height:105px;color:#63728a;font-size:10px;line-height:2}.cycle-label{display:block;font-size:9px;color:#738198;margin:10px 0}.cycle-label select,.inline-form select{border:1px solid #e1e8f1;border-radius:6px;padding:7px;background:#fff;font:10px Inter;margin-left:5px}.inline-form{display:flex;gap:5px;align-items:center}.danger-btn{background:#fff0f1;color:#d64055;border:1px solid #ffd7dc}.badge.active{background:#e5f8f1;color:#0a936b}.badge.suspended{background:#fff0f1;color:#d64055}.badge.trial{background:#eef2ff;color:#4f46e5}.badge.pending{background:#fff7e6;color:#a16207}@media(max-width:1100px){.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.plan-grid,.template-grid{grid-template-columns:1fr}.welcome.compact{display:flex;gap:10px;align-items:flex-start;flex-direction:column}.inline-form{flex-wrap:wrap}}

/* V0.4 visual designer and client portal */
.designer-card{margin-bottom:24px}.designer-controls{display:flex;gap:18px;align-items:end;flex-wrap:wrap}.designer-controls label{display:grid;gap:8px;font-size:12px;color:#64748b;font-weight:700}.designer-controls input[type=color]{width:74px;height:42px;border:1px solid #dbe3ef;border-radius:10px;background:#fff;padding:4px}.designer-live{--live-accent:#2563EB;--live-surface:#F3F6FB;--live-text:#17233B;margin-top:22px;border:1px solid #e2e8f0;border-radius:14px;padding:22px;max-width:560px;background:#fff;color:var(--live-text);box-shadow:0 12px 35px #0f172a0d}.live-head{display:flex;justify-content:space-between;align-items:center}.live-head b{font-size:19px;letter-spacing:-.5px}.live-head span{font-size:9px;letter-spacing:1.5px;color:var(--live-accent);font-weight:800}.live-line{height:3px;background:var(--live-accent);margin:18px 0}.live-row{display:grid;gap:9px;width:58%}.live-row i{height:9px;background:var(--live-surface);border-radius:5px}.live-row i:nth-child(2){width:80%}.live-row i:nth-child(3){width:55%}.live-total{margin:22px 0 0 auto;padding:14px;background:var(--live-surface);border-left:4px solid var(--live-accent);width:max-content;font-weight:800}.portal-wrap{max-width:900px;margin:35px auto;padding:24px}.portal-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.portal-actions{display:flex;gap:10px;flex-wrap:wrap}.portal-note{background:#eff6ff;border:1px solid #bfdbfe;padding:14px;border-radius:12px;color:#1e40af}.workflow-actions{display:flex;gap:8px;flex-wrap:wrap}.workflow-actions form{display:inline}.event-list{display:grid;gap:10px}.event-item{border-left:3px solid #2563eb;padding:8px 14px;background:#f8fafc;border-radius:0 9px 9px 0}.event-item small{display:block;color:#64748b}.public-form{display:grid;gap:12px;max-width:540px}.public-form input,.public-form select,.public-form textarea{padding:12px;border:1px solid #dbe3ef;border-radius:9px;width:100%}

/* Approved SMART INVOICE by ARAILD brand identity */
.brand-panel{display:flex;justify-content:center;align-items:center;background:#fff;border-radius:13px;padding:5px 7px;min-height:96px;box-shadow:0 8px 24px #0002;margin-bottom:4px}
.brand-panel img{display:block;width:100%;max-width:216px;height:auto;object-fit:contain}
.auth-logo{display:block;width:100%;max-width:340px;height:auto;max-height:170px;object-fit:contain;margin:0 auto 12px}
.portal-brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.portal-brand img{display:block;width:260px;max-width:100%;height:auto;object-fit:contain}
.portal-brand small{font-size:8px;letter-spacing:1.5px;color:#8492a6;font-weight:800;margin-left:4px}
@media(max-width:700px){.brand-panel{min-height:72px}.brand-panel img{max-width:180px}.auth-logo{max-width:290px}.portal-brand img{width:210px}}

/* ===== V0.5 — Console Super Admin & équipe ===== */
.admin-hero{margin-bottom:16px}
.admin-search input{border:1px solid #e1e8f1;border-radius:8px;padding:8px 10px;font:11px Inter;min-width:220px;background:#fff}
.inline-form select{border:1px solid #e1e8f1;border-radius:7px;padding:6px 8px;font:10px Inter;background:#fff;color:#24344e}
.actions{white-space:normal}
.actions .inline-form{display:inline-flex;flex-wrap:wrap;gap:5px;align-items:center}
.admin-more{display:inline-block;margin-top:5px}
.admin-more summary{cursor:pointer;font-size:9px;color:#718096;list-style:none}
.admin-more summary::-webkit-details-marker{display:none}
.admin-more[open] summary{margin-bottom:5px}
.checkline{justify-content:flex-end}
.checkline span{display:flex;align-items:center;gap:7px;font-weight:600;color:#24344e}
.checkline input{width:auto!important}
.formactions{display:flex;align-items:flex-end;justify-content:flex-end;grid-column:1/-1}
.admin-plans{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.alert.impersonating{background:#fff6e5;color:#8a5a00;border:1px solid #f5d48a;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.alert.impersonating .btn{margin-left:auto}
table code{font-size:10px;background:#f3f6fb;padding:2px 6px;border-radius:5px;color:#24344e}
.btn[disabled]{opacity:.5;cursor:not-allowed}
@media (max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.admin-search input{min-width:140px}}
