:root{--navy:#052b4d;--green:#08714c;--gold:#d79d2b;--ink:#13243a;--muted:#6e7886;--line:#e1e6ea}*{box-sizing:border-box}body{margin:0;background:#f6f8f7;color:var(--ink);font-family:Arial,sans-serif}button,input,select,textarea{font:inherit}.hidden{display:none!important}.primary,.login button,.install button{border:0;background:var(--green);color:white;padding:13px 20px;border-radius:8px;font-weight:700}.app aside#sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:linear-gradient(160deg,var(--navy),#00182e);color:white;padding:28px 14px;display:flex;flex-direction:column;z-index:20}.logo{font:28px Georgia,serif}.logo b,.logo:first-letter{color:var(--gold)}#sidebar .logo{padding:0 16px 35px}#closeMenu{display:none;float:right;background:none;border:0;color:white;font-size:26px}nav{display:grid;gap:8px}nav button{border:0;background:none;color:white;text-align:left;padding:16px 20px;border-radius:11px;font-weight:700}nav button.active,nav button:hover{background:var(--green)}#sidebar footer{margin-top:auto;text-align:center;color:var(--gold);font-size:9px;letter-spacing:2px}.app main{margin-left:250px}.app main>header{height:108px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:20px;padding:20px 30px;position:sticky;top:0;z-index:10}.app h1{font:700 29px Georgia;margin:0}.app main>header p{margin:5px 0;color:var(--muted)}#menu{display:none;border:0;background:none;font-size:24px}.search{margin-left:auto;width:min(430px,36vw);border:1px solid var(--line);padding:13px;border-radius:9px}.search input{border:0;outline:0;width:90%}.avatar{width:44px;height:44px;background:var(--green);color:white;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 2px var(--gold)}#installApp{border:1px solid var(--green);background:white;color:var(--green);padding:9px;border-radius:7px}#view{padding:30px 26px;max-width:1450px;margin:auto}.actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.actions small{color:var(--muted);letter-spacing:1px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stats article{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;gap:14px;align-items:center}.stats article>i{font-style:normal;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#e7f3ed;color:var(--green);font-size:29px}.stats span{color:var(--muted)}.stats span b{display:block;font:700 34px Georgia;color:var(--green)}.dashgrid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;margin-top:16px}.panel{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.panel>header{padding:18px 20px}.panel h2{font:700 20px Georgia;margin:0}.table{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr;align-items:center;width:calc(100% - 36px);margin:0 18px;padding:12px 0;border:0;border-top:1px solid var(--line);background:white;text-align:left}.table.head{color:var(--muted);font-size:12px}.person{display:flex;align-items:center;gap:9px}.person i{font-style:normal;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e7f3ed;color:var(--green);font-size:11px}.table em,.fittings em{font-style:normal;background:#e7f3ed;color:var(--green);padding:6px 10px;border-radius:10px;font-size:11px;width:max-content}.fittings{padding:0 20px}.fittings>div{display:grid;grid-template-columns:52px 1fr auto;align-items:center;border-top:1px solid var(--line);padding:10px 0}.fittings time{text-align:center;color:var(--green)}.fittings time b,.fittings small{display:block}.fittings small{font-size:10px;color:var(--muted)}.fittings .pending{background:#fff0d7;color:#8b5b18}.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.quick button{background:white;border:1px solid var(--line);border-radius:14px;padding:19px;text-align:left;color:var(--green)}.quick i{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#e7f3ed;font-size:27px;margin-bottom:12px}.quick b,.quick small{display:block}.quick small{color:var(--muted);margin-top:5px}.count,.tag{font-style:normal;font-size:10px;padding:5px 9px;border-radius:10px;background:#e7f3ed;color:var(--green)}.clientgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.clientgrid article{background:white;border:1px solid var(--line);border-radius:14px;padding:22px}.clientgrid .tag{display:inline-block;margin:12px 0}.clientgrid p{color:var(--muted);font-size:13px}.clientgrid footer{border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between}.clientgrid button,.records button,.appointments button{border:0;background:none;color:var(--green);font-weight:700}.record{display:grid;grid-template-columns:1.4fr .7fr 1fr 1fr 1fr .8fr;align-items:center;padding:13px 20px;border-top:1px solid var(--line);font-size:13px}.record.head{color:var(--muted);background:#fafbfb}.appointments{display:grid;gap:14px}.appointments article{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;display:grid;grid-template-columns:90px 1fr auto;align-items:center}.appointments time{border-right:1px solid var(--line)}.appointments time b,.appointments time small{display:block}.appointments time b{font:34px Georgia;color:var(--green)}.appointments h2{font-family:Georgia;margin:8px 0}.appointments p{color:var(--muted)}.settings{padding:25px;max-width:900px}.cols,.cols3{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.cols3{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:6px;font-size:12px;color:#536174;font-weight:700}input,select,textarea{border:1px solid #d9e0e5;border-radius:8px;padding:12px;background:white;outline:none}dialog{border:0;border-radius:16px;width:min(550px,94vw);max-height:92vh;padding:24px}dialog::backdrop{background:#00182ebb}dialog>header{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:18px}dialog>header small{color:var(--gold);letter-spacing:2px}dialog>header h2{font-family:Georgia;margin:4px 0 15px}dialog>header button{border:0;background:#eef1f3;width:34px;height:34px;border-radius:50%;font-size:21px}dialog:has(.measuregrid){width:min(900px,94vw)}dialog form{display:grid;gap:14px}.measuregrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;background:#f5f8f6;padding:14px;border-radius:10px}.sheet{max-width:850px;margin:auto;background:white;border:1px solid var(--line);padding:36px}.sheet>header{display:flex;justify-content:space-between;border-bottom:3px solid var(--green)}.sheet>header h2{font:28px Georgia}.sheet>header h2 b{color:var(--gold)}.sheet>header span{display:grid;text-align:right}.sheet>section{display:flex;justify-content:space-between;background:#f0f7f3;padding:18px;margin-top:18px}.sheet>section>div{display:grid;grid-template-columns:auto auto;gap:5px 15px}.sheet small{font-size:9px;color:var(--muted);letter-spacing:1px}.sheetdates{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin:16px 0}.sheetdates span{display:grid;padding:11px;border-right:1px solid var(--line)}.values{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.values div{display:flex;justify-content:space-between;padding:12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.values div span{font-size:12px;color:var(--muted)}.sheet>aside{background:#fff8e8;border-left:3px solid var(--gold);padding:14px;margin-top:18px}.sheet>footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;margin-top:25px;font-size:10px;color:var(--muted)}.login,.install{min-height:100vh;display:grid;place-items:center;background:linear-gradient(150deg,var(--navy),#00182e)}.login form,.install main{background:white;border-radius:17px;padding:32px;width:min(440px,92vw);display:grid;gap:15px}.login .logo,.install h1{text-align:center}.login p,.install>main>p{text-align:center;color:var(--muted)}#loginError,.error{color:#a52121;background:#fee;padding:9px;border-radius:6px}.success{background:#edf8f2;padding:18px}.install form{display:grid;gap:13px}.install h2{font:20px Georgia;margin-bottom:0}
@media(max-width:1000px){.stats{grid-template-columns:repeat(2,1fr)}.dashgrid{grid-template-columns:1fr}.clientgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.app aside#sidebar{transform:translateX(-100%);transition:.2s}.app aside#sidebar.open{transform:none}#closeMenu,#menu{display:block}.app main{margin:0}.app main>header{height:auto;padding:14px}.app main>header h1{font-size:21px}.app main>header p{font-size:11px}.search{position:absolute;top:75px;left:13px;width:calc(100% - 26px);background:white}#view{padding:70px 13px 20px}.stats{gap:9px}.stats article{padding:12px}.stats article>i{width:42px;height:42px}.stats span b{font-size:25px}.quick,.clientgrid{grid-template-columns:1fr}.panel{overflow:auto}.table{min-width:570px}.record{min-width:760px}.appointments article{grid-template-columns:70px 1fr}.appointments button{grid-column:2}.cols,.cols3{grid-template-columns:1fr}.measuregrid{grid-template-columns:repeat(2,1fr)}.values{grid-template-columns:repeat(2,1fr)}}@media print{#sidebar,.app main>header,.noprint{display:none!important}.app main{margin:0}#view{padding:0}.sheet{border:0;max-width:none}}
