:root{color:#142018;background:#f6f7f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top,rgb(229 240 230 / 60%),transparent 30%),#f6f7f1}button,input,select{font:inherit}h1,h2,p,dl,dd{margin:0}h1{font-size:clamp(2rem,10vw,3rem);line-height:.95;letter-spacing:-.03em}h2{font-size:clamp(1.2rem,5vw,1.45rem);line-height:1.1}.app-shell{width:min(100%,860px);min-height:100vh;margin:0 auto;padding:16px 14px 24px;display:grid;gap:12px}.auth-shell,.work-shell{align-content:start}.brand-header,.section-card,.auth-card,.parking-closed-card{border:1px solid #d8e0d5;border-radius:18px;background:#ffffffe0;box-shadow:0 12px 36px #1420180f}.brand-header{display:grid;gap:12px;padding:16px}.brand-header--work{align-items:start}.brand-copy{display:grid;gap:6px}.brand-subtitle,.brand-footer,.eyebrow,.section-kicker,.status-note,.message-panel,.empty-state,.session-item small,.session-item span,.header-timestamp{color:#5f6c63}.brand-subtitle{font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.brand-footer{font-size:.88rem;font-weight:700}.header-row,.section-heading,.header-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.header-meta{display:grid;justify-items:end;gap:8px}.header-timestamp{font-size:.84rem;font-weight:700;text-align:right}.user-name{max-width:180px;overflow-wrap:anywhere;text-align:right;font-size:.95rem}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border-radius:999px;color:#fff;font-size:.78rem;font-weight:800;text-align:center;white-space:nowrap}.status-pill--quiet{min-height:26px;font-size:.74rem}.status-checking{background:#5d6470}.status-online{background:#0f7a4a}.status-offline{background:#b42318}.auth-card{display:grid;gap:14px;padding:16px}.auth-form,.entry-form{display:grid;gap:12px}.pin-field,.entry-form label{display:grid;gap:6px}.pin-field span,.entry-form label span,.summary-label,dt{color:#5f6c63;font-size:.82rem;font-weight:700}.pin-input{min-height:60px;border:1px solid #c8d2c5;border-radius:16px;background:#fff;font-size:1.45rem;font-weight:800;letter-spacing:.1em;text-align:center}input,select{width:100%;min-height:48px;border:1px solid #c8d2c5;border-radius:14px;background:#fff;color:#142018;padding:10px 12px}.field-grid{display:grid;gap:12px}.field-plate input{min-height:58px;font-size:1.15rem;font-weight:800;letter-spacing:.08em}.primary-button,.secondary-button,.logout-button,.cancel-button,.checkout-row button,.charge-button{border:0;border-radius:14px;cursor:pointer;font-weight:800}.primary-button,.secondary-button{min-height:50px}.primary-button{background:#173d2b;color:#fff}.primary-button--large{min-height:56px;font-size:1rem}.secondary-button{width:100%;background:#0f7a4a;color:#fff}.logout-button{min-height:38px;padding:0 12px;background:#e5ebe3;color:#142018}button:disabled{cursor:wait;opacity:.65}.message-panel{padding:12px 14px;border:1px solid #d8e0d5;border-radius:14px;background:#fff;font-weight:700}.section-card,.parking-closed-card{display:grid;gap:14px;padding:14px}.section-heading{align-items:center}.section-heading span{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;background:#e9f2ea;color:#173d2b;font-size:.8rem;font-weight:800}.quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-actions--other{grid-template-columns:repeat(1,minmax(0,1fr))}.charge-button{display:grid;min-height:104px;padding:14px;border:1px solid #d8e0d5;background:#fff;color:#142018;text-align:left;box-shadow:0 1px 2px #10182814}.charge-button.selected{border-color:#0f7a4a;background:#eef8f0}.charge-button span{align-self:start;font-size:.98rem;line-height:1.15}.charge-button strong{align-self:end;font-size:1.55rem;line-height:1}.section-kicker{margin-bottom:10px;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.parking-closed-card{text-align:center;justify-items:center}.parking-closed-card .eyebrow{font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.closed-summary,.closing-grid{width:100%;display:grid;gap:10px}.closed-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.closing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.closed-summary div,.closing-grid div{display:grid;gap:4px;padding:12px;border-radius:14px;background:#f3f6f1}dd{font-size:1.04rem;font-weight:800;color:#142018}.session-list{display:grid;gap:10px}.session-item{display:grid;gap:12px;padding:12px;border:1px solid #e0e6dc;border-radius:14px;background:#fafcf8}.session-item>div:first-child{display:grid;gap:4px}.session-item strong{font-size:1.2rem}.checkout-row{display:grid;grid-template-columns:1fr 92px;gap:8px}.checkout-row button{min-height:48px;background:#173d2b;color:#fff}.cancel-button{min-height:42px;background:#f4ebe9;color:#8a2f22}.status-note{font-size:.88rem}.page-footer{padding:2px 0 8px;color:#7a857c;font-size:.82rem;font-weight:700;text-align:center}.empty-state{padding:8px 0}@media(min-width:700px){.app-shell{padding-top:22px}.brand-header{grid-template-columns:1fr auto;align-items:start}.work-shell .brand-header{align-items:center}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions,.quick-actions--other{grid-template-columns:repeat(3,minmax(0,1fr))}.closing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
