:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17212b;background:#f4f7fa;--blue:#123b67;--blue2:#1f5fa4;--accent:#e9a72c;--muted:#667482}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#f4f7fa}body{min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.screen{min-height:100vh;display:grid;place-items:center;padding:28px 20px;background:linear-gradient(145deg,#eef5fb 0%,#f8fafc 52%,#eaf2f9 100%);position:relative;overflow:hidden}.screen:before,.screen:after{content:"";position:absolute;border-radius:50%;border:1px solid #123b6714;pointer-events:none}.screen:before{width:620px;height:620px;left:-330px;bottom:-360px}.screen:after{width:520px;height:520px;right:-300px;top:-320px}.login-shell{width:min(460px,100%);position:relative;z-index:1}.brand-card,.card,.modal-card{background:#fff;border-radius:18px;box-shadow:0 14px 40px #0a234018}.brand-card{width:100%;padding:34px 34px 30px;text-align:center;border:1px solid #e5ebf1}.brand-logo{display:block;width:min(230px,72%);height:auto;max-height:130px;object-fit:contain;margin:0 auto 10px}.product-kicker{font-size:10px;font-weight:800;letter-spacing:2px;color:#6b7886;margin-top:2px}.brand-card h1{font-size:32px;line-height:1.1;margin:8px 0 4px;color:var(--blue)}.brand-card .tagline{font-size:17px;font-weight:700;color:#3c5369;margin:0 0 7px}.brand-card>p:not(.tagline){color:#71808d;margin:0 auto;max-width:340px;font-size:14px}.brand-card form{display:grid;gap:12px;margin-top:24px;text-align:left}.brand-card input{height:48px}.brand-card form button{height:48px;background:linear-gradient(90deg,#155fc0,#1e6fd0);box-shadow:0 7px 16px #155fc02b}.site-footer{color:#fff;background:#082c58;text-align:center;padding:13px 16px;font-size:13px;letter-spacing:.05px}.site-footer strong{color:var(--accent)}.login-shell>.site-footer{border-radius:0 0 16px 16px;box-shadow:0 14px 40px #0a234018}.error{color:#b42318!important}.success{color:#18794e!important}
input,textarea,select{width:100%;border:1px solid #d5dce4;border-radius:10px;padding:12px;background:#fff;color:#17212b;outline:none}input:focus,textarea:focus,select:focus{border-color:#7aa7d5;box-shadow:0 0 0 3px #1f5fa414}textarea{min-height:100px;resize:vertical}button{border:0;border-radius:10px;padding:11px 16px;background:var(--blue);color:#fff;font-weight:700}.ghost{background:transparent;color:var(--blue);border:1px solid #d5dce4}.primary{background:var(--blue)}
#appView{min-height:100vh;display:flex;flex-direction:column}header{background:#fff;padding:12px max(18px,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e6eb;position:sticky;top:0;z-index:5}.app-brand{display:flex;align-items:center;gap:12px}.app-brand img{width:76px;height:48px;object-fit:contain}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.3px;color:#6c7885}.app-brand h1{font-size:24px;margin:2px 0;color:var(--blue)}.user-menu{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700}main{width:100%;max-width:1200px;margin:auto;padding:18px;flex:1}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats div{background:#fff;border-radius:14px;padding:16px;display:flex;flex-direction:column;border:1px solid #e6ebf0}.stats b{font-size:28px;color:var(--blue)}.stats span{color:#6b7680;font-size:13px}.tabs{display:flex;gap:8px;overflow:auto;margin:18px 0}.tabs button{background:#e7edf3;color:#355064;white-space:nowrap}.tabs button.active{background:var(--blue);color:#fff}.card{padding:18px;margin-bottom:18px;border:1px solid #e6ebf0}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid label{display:grid;gap:6px;font-weight:700;font-size:13px;color:#46535f}.grid label:nth-of-type(4),.grid label:nth-of-type(5),.grid label:nth-of-type(6),.grid label:nth-of-type(7){grid-column:1/-1}.full{grid-column:1/-1}.report,.customer{padding:14px 0;border-bottom:1px solid #e7ebef}.report:last-child,.customer:last-child{border-bottom:0}.badge{display:inline-block;padding:5px 8px;border-radius:999px;background:#edf2f6;font-size:11px;font-weight:800}.modal{position:fixed;inset:0;background:#06182b88;display:grid;place-items:center;padding:20px;z-index:10;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-card{width:min(500px,100%);padding:24px;position:relative;max-height:calc(100vh - 40px);overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-card form{display:grid;gap:12px}.close{position:absolute;right:12px;top:12px;background:transparent;color:#333;font-size:24px;padding:4px 9px}.danger{background:#b42318;color:#fff;padding:8px 12px;font-size:12px}.customer-actions{margin-top:8px}.danger:disabled{opacity:.6;cursor:not-allowed}button.danger{background:#b42318;color:#fff}button:disabled{opacity:.6;cursor:not-allowed}.user-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e7ebef}.user-row:last-child{border-bottom:0}.actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.small{padding:8px 11px;font-size:12px}.app-footer{margin-top:auto}
@media(max-width:700px){.modal{padding:10px;place-items:start center}.modal-card{width:100%;max-height:calc(100vh - 20px);padding:20px 16px 18px;margin:auto}.modal-card form button[type="submit"]{min-height:48px;width:100%}.modal-card form .row{flex-direction:column;align-items:stretch}.modal-card form .row button{width:100%;min-height:46px}.screen{padding:18px 14px}.brand-card{padding:27px 20px 24px}.brand-logo{width:190px;max-height:110px}.brand-card h1{font-size:28px}.site-footer{font-size:12px;padding:12px 10px}.app-brand img{width:64px;height:42px}.app-brand .eyebrow{font-size:9px}.app-brand h1{font-size:20px}header{padding:10px 14px;align-items:center}.user-menu span{display:none}main{padding:12px}.grid{grid-template-columns:1fr}.grid label,.full{grid-column:1}.stats b{font-size:23px}.card{padding:14px}.user-row{align-items:flex-start;flex-direction:column}.actions{width:100%;justify-content:flex-start}.actions button{flex:1;min-width:90px}}
