:root{--black:#000;--ink:#111;--muted:#676767;--line:#cfcfcf;--soft:#f5f5f5;--white:#fff;--radius:8px}*{box-sizing:border-box}html,body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{background:#fff;border:1px solid #111;border-radius:5px;padding:9px 12px;font-weight:700;cursor:pointer}button:hover{background:#f3f3f3}button:disabled{opacity:.45;cursor:not-allowed}.shell{min-height:100vh}.topbar{height:66px;border-bottom:3px solid #000;display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;background:#fff;z-index:20}.brand{display:flex;align-items:baseline;gap:10px}.brand b{font-size:24px;letter-spacing:-1px}.brand span{font-size:10px;letter-spacing:2px}.top-actions{display:flex;gap:8px;align-items:center}.top-actions select{border:1px solid #000;border-radius:5px;padding:8px 26px 8px 9px;background:#fff}.sync-state{font-size:11px;font-weight:700;letter-spacing:.4px}.body{display:grid;grid-template-columns:166px 1fr;min-height:calc(100vh - 66px)}.sidebar{border-right:1px solid #000;padding:20px 12px;display:flex;flex-direction:column;gap:5px}.side-title{font-size:9px;letter-spacing:1.8px;font-weight:700;margin:3px 8px 8px;color:#555}.sidebar button{border:none;text-align:left;padding:10px;border-radius:4px}.sidebar button.active{background:#000;color:#fff}.side-foot{margin-top:auto;border-top:1px solid #ddd;padding-top:12px;display:grid;gap:5px}main{padding:24px 28px;min-width:0}.bottom-nav{display:none}.page-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;border-bottom:2px solid #000;padding-bottom:12px;margin-bottom:14px}.page-head h1{font-size:30px;line-height:1;margin:0;letter-spacing:-1.1px}.page-head p{margin:6px 0 0;color:#555;font-size:13px}.page-actions{display:flex;align-items:center;gap:7px}.page-actions input{border:1px solid #111;padding:9px;border-radius:4px}.stats-line{display:flex;gap:28px;padding:6px 0 12px;font-size:12px;text-transform:uppercase;letter-spacing:.7px}.stats-line b{font-size:20px;margin-right:4px}.daily-layout{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(240px,1fr);border-top:1px solid #000;border-bottom:1px solid #000}.section-label{font-size:10px;font-weight:800;letter-spacing:1.3px;padding:8px 0}.hour-grid{border-right:1px solid #000}.hour-grid>.section-label,.notes-panel>.section-label{padding-left:10px;border-bottom:1px solid #000}.hour-row{min-height:55px;display:grid;grid-template-columns:85px 1fr;border-bottom:1px solid #d8d8d8}.hour-row:last-child{border-bottom:0}.hour-row time{padding:12px 10px;font-weight:700;font-size:12px;border-right:1px solid #ddd}.hour-row>div{padding:5px 7px;display:flex;gap:5px;align-items:center;min-width:0}.write-line{display:block;width:96%;height:1px;border-bottom:1px solid #c8c8c8;margin:14px 4px}.notes-panel{display:flex;flex-direction:column}.notes-panel textarea{border:0;resize:none;min-height:670px;padding:14px;line-height:1.55;background:repeating-linear-gradient(#fff,#fff 31px,#e2e2e2 32px);outline:none}.job-card{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:'time strong status' 'time span status' 'time small status';gap:0 8px;border:1px solid #000;border-radius:5px;padding:7px;text-align:left;min-width:180px;background:#fff}.job-card .job-time{grid-area:time;font-size:10px;font-weight:800;align-self:center}.job-card strong{grid-area:strong;font-size:11px}.job-card>span:not(.job-time){grid-area:span;font-size:10px}.job-card small{grid-area:small;color:#666;font-size:9px}.job-card em{grid-area:status;font-size:8px;font-style:normal;font-weight:800;text-transform:uppercase;align-self:center;border-left:1px solid #000;padding-left:6px}.job-completed{background:repeating-linear-gradient(-45deg,#fff,#fff 6px,#ededed 6px,#ededed 12px)}.job-completed strong,.job-completed>span{text-decoration:line-through;text-decoration-thickness:1px}.unscheduled{padding:10px 0;display:flex;gap:8px;flex-wrap:wrap}.unscheduled>.section-label{width:100%}.empty{color:#777;font-size:12px;padding:14px 0}.seg{display:flex;border:1px solid #000;border-radius:5px;overflow:hidden}.seg button{border:0;border-right:1px solid #000;border-radius:0}.seg button:last-child{border-right:0}.seg button.active{background:#000;color:#fff}.schedule-wrap>.page-head+ .print-page,.nested-daily{margin-top:10px}.schedule-wrap .print-page>.page-head{display:none}.week-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #000}.day-block{min-height:205px;padding:9px;border-right:1px solid #000;border-bottom:1px solid #000}.day-block:nth-child(even){border-right:0}.day-block header{display:flex;justify-content:space-between;border-bottom:1px solid #000;padding-bottom:6px;margin-bottom:7px;font-size:11px}.day-block textarea{width:100%;height:145px;border:0;resize:none;background:repeating-linear-gradient(#fff,#fff 27px,#ddd 28px)}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.month-weekdays{background:#000;color:#fff}.month-weekdays b{text-align:center;padding:7px;font-size:10px;letter-spacing:1px}.month-grid{border-left:1px solid #000;border-top:1px solid #000}.month-cell{min-height:112px;border-right:1px solid #000;border-bottom:1px solid #000;padding:5px;overflow:hidden}.month-cell time{display:block;text-align:right;font-size:10px;font-weight:800;margin-bottom:4px}.month-cell .job-card{min-width:0;width:100%;grid-template-columns:1fr auto;grid-template-areas:'strong status' 'span status' 'small status';margin-bottom:3px;padding:4px}.month-cell .job-time{display:none}.month-cell .job-card strong{font-size:9px}.month-cell .job-card>span:not(.job-time),.month-cell .job-card small{font-size:8px}.month-cell .job-card em{font-size:6px}.month-write{display:block;border-bottom:1px solid #ddd;margin:9px 2px 0}.month-notes{border:1px solid #000;border-top:0;padding:8px;display:grid;grid-template-columns:180px 1fr;align-items:start;gap:8px}.month-notes b{font-size:10px;letter-spacing:1px}.month-notes textarea{min-height:72px;border:0;resize:none;background:repeating-linear-gradient(#fff,#fff 24px,#ddd 25px)}.micro{font-size:9px;font-weight:700;letter-spacing:.8px}.dispatch-board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}.dispatch-lane{border:1px solid #000;min-height:470px}.dispatch-lane>header{background:#000;color:#fff;padding:10px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.6px}.lane-jobs{padding:8px;display:grid;gap:7px;align-content:start}.lane-jobs .job-card{width:100%}.completed-strip{border-top:2px solid #000;margin-top:14px;padding-top:4px;display:flex;gap:7px;flex-wrap:wrap}.completed-strip>.section-label{width:100%}.customer-list{border-top:1px solid #000}.customer-row{display:grid;grid-template-columns:1fr 1.8fr;gap:24px;border-bottom:1px solid #bbb;padding:18px 0}.customer-row h3{margin:0 0 4px}.customer-row p,.customer-row small{margin:0;color:#555}.properties{display:grid;gap:8px}.properties>div{border-left:3px solid #000;padding:2px 0 2px 10px;display:grid;gap:3px}.properties span{font-size:11px}.properties details{font-size:11px}.properties details p{margin:4px 0}.job-table{border-top:1px solid #000}.job-row{width:100%;display:grid;grid-template-columns:105px 1.7fr 1.2fr 90px 120px 110px;gap:10px;align-items:center;border:0;border-bottom:1px solid #ccc;border-radius:0;padding:11px 8px;text-align:left}.job-row.head{background:#000;color:#fff;font-size:9px;padding:8px}.job-row strong{display:grid}.job-row strong small{font-weight:400;color:#666}.job-row span{font-size:11px}.service-record{max-width:1200px;margin:auto}.record-status{display:flex;gap:18px;font-size:9px;font-weight:800;letter-spacing:1px;margin:-4px 0 12px}.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-grid section{border:1px solid #000;padding:14px}.record-grid h2{font-size:12px;letter-spacing:1px;margin:0 0 12px;border-bottom:1px solid #000;padding-bottom:7px;text-transform:uppercase}.record-grid label,.settings-grid label{display:grid;gap:5px;font-size:10px;font-weight:700;margin-bottom:10px}.record-grid input,.record-grid select,.record-grid textarea,.settings-grid input{border:1px solid #999;border-radius:4px;padding:9px;background:#fff}.record-grid textarea{min-height:78px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.check{display:flex!important;align-items:center;gap:8px!important}.signature-box{height:130px;border:1px solid #000;position:relative;background:repeating-linear-gradient(#fff,#fff 39px,#eee 40px)}.signature-box canvas{width:100%;height:100%;touch-action:none}.signature-box span{position:absolute;left:8px;bottom:5px;font-size:8px;color:#777}.billing-summary,.report-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #000;margin-bottom:16px}.billing-summary>div,.report-grid article{padding:18px;border-right:1px solid #000;display:grid;gap:3px}.billing-summary>div:last-child,.report-grid article:last-child{border-right:0}.billing-summary b,.report-grid b{font-size:28px}.billing-summary span,.report-grid span{font-size:9px;font-weight:800;letter-spacing:1px}.billing-summary small,.report-grid small{color:#666}.truck-report{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.truck-report article{border:1px solid #000;padding:14px}.truck-report header{display:flex;justify-content:space-between}.truck-report .bar{height:8px;background:#eee;margin:13px 0}.truck-report .bar i{display:block;height:100%;background:#000}.truck-report p{font-size:11px;margin:0}.presentation{max-width:1180px;margin:auto}.hero-rule{height:8px;background:#000;margin:-3px 0 24px}.presentation-hero{display:grid;grid-template-columns:1fr 1.15fr;gap:44px;align-items:center;padding:22px 0 34px}.eyeline{font-size:9px;font-weight:800;letter-spacing:1.8px}.presentation-hero h2{font-size:52px;line-height:.92;letter-spacing:-3px;margin:10px 0 18px}.presentation-hero p{max-width:480px;font-size:16px;line-height:1.55}.system-diagram{border:1px solid #000;padding:20px}.office-box{border:2px solid #000;padding:17px;display:grid;text-align:center;gap:4px}.office-box b{font-size:22px}.office-box span,.truck-boxes span{font-size:10px}.connector{width:2px;height:28px;background:#000;margin:auto}.truck-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.truck-boxes>div{border:1px solid #000;padding:14px 8px;text-align:center;display:grid;gap:4px}.presentation-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #000}.presentation-grid article{padding:17px;border-right:1px solid #000}.presentation-grid article:last-child{border-right:0}.presentation-grid article>b{font-size:11px}.presentation-grid h3{margin:12px 0 8px;font-size:16px}.presentation-grid p{font-size:11px;line-height:1.5;margin:0}.demo-sequence{margin-top:18px;border-top:3px solid #000;padding-top:14px;display:grid;grid-template-columns:190px 1fr}.demo-sequence>b{font-size:10px;letter-spacing:1px}.demo-sequence ol{margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:0;list-style-position:inside}.demo-sequence li{font-size:11px;border-left:1px solid #000;padding-left:9px}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.settings-grid section{border:1px solid #000;padding:16px}.settings-grid h2{font-size:14px;margin-top:0}.settings-grid p,.settings-grid small{font-size:11px;line-height:1.45}.settings-grid button{margin-right:6px;margin-bottom:6px}
@media(max-width:900px){.topbar{padding:0 12px}.brand span,.sync-state{display:none}.body{grid-template-columns:1fr}.sidebar{display:none}main{padding:18px 14px 80px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:2px solid #000;display:grid;grid-template-columns:repeat(5,1fr);z-index:30;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav button{border:0;border-right:1px solid #ddd;border-radius:0;padding:13px 4px;font-size:10px}.bottom-nav button.active{background:#000;color:#fff}.daily-layout{grid-template-columns:1.8fr 1fr}.notes-panel textarea{min-height:665px}.dispatch-board{grid-template-columns:repeat(4,260px)}.record-grid{grid-template-columns:1fr}.job-row{grid-template-columns:85px 1.5fr 1fr 70px 100px}.job-row>*:last-child{display:none}.presentation-hero{grid-template-columns:1fr;gap:12px}.presentation-hero h2{font-size:46px}.presentation-grid{grid-template-columns:1fr 1fr}.presentation-grid article:nth-child(2){border-right:0}.presentation-grid article{border-bottom:1px solid #000}.demo-sequence{grid-template-columns:1fr}.demo-sequence ol{grid-template-columns:1fr 1fr}.billing-summary,.report-grid{grid-template-columns:1fr 1fr}.truck-report,.settings-grid{grid-template-columns:1fr}.customer-row{grid-template-columns:1fr}.month-cell{min-height:90px}.month-cell .job-card em{display:none}}
@media(max-width:620px){.topbar{height:58px}.brand b{font-size:20px}.top-actions button{display:none}.page-head{align-items:flex-start}.page-head h1{font-size:26px}.daily-layout{grid-template-columns:1fr}.hour-grid{border-right:0}.notes-panel{border-top:2px solid #000}.notes-panel textarea{min-height:240px}.week-grid{grid-template-columns:1fr}.day-block{border-right:0}.month-grid,.month-weekdays{min-width:760px}.month-print{overflow-x:auto}.record-grid{grid-template-columns:1fr}.presentation-grid{grid-template-columns:1fr}.presentation-grid article{border-right:0}.demo-sequence ol{grid-template-columns:1fr}}
@page{size:letter portrait;margin:.28in}@media print{body{background:#fff}.topbar,.sidebar,.bottom-nav,.page-actions,.schedule-wrap>.page-head,.stats-line,.unscheduled{display:none!important}.body{display:block}.shell main{padding:0}.print-page{width:100%;max-height:10.4in;overflow:hidden}.month-print{max-height:7.9in}.daily-print .page-head,.weekly-print .page-head,.month-print .page-head{display:flex!important}.daily-layout{grid-template-columns:2.15fr 1fr}.hour-row{min-height:.49in}.notes-panel textarea{min-height:6.45in}.job-card{break-inside:avoid}.week-grid{min-height:8.9in}.day-block{min-height:2.05in}.month-cell{min-height:.87in}.month-notes textarea{min-height:.55in}.page-head{margin-bottom:7px;padding-bottom:7px}.page-head h1{font-size:22px}.page-head p{font-size:10px}.brand{display:none}.service-record{font-size:9px}.record-grid{grid-template-columns:1fr 1fr}.record-grid section{break-inside:avoid}.presentation{page:landscape}}
/* Presentation-density hardening */
.hour-row .job-card{width:100%;min-width:0}
.completed-strip .job-card{min-width:275px}
.month-job-line{width:100%;height:21px;border:0;border-bottom:1px solid #d6d6d6;border-radius:0;padding:2px 1px;display:grid;grid-template-columns:18px minmax(0,1fr) 30px;gap:3px;align-items:center;text-align:left;background:#fff;overflow:hidden}
.month-job-line>span{font-size:7px;font-weight:900;letter-spacing:.2px}
.month-job-line strong{font-size:7.5px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.month-job-line small{font-size:6.8px;text-align:right;font-weight:800;color:#444}
.month-job-line.job-completed{background:repeating-linear-gradient(-45deg,#fff,#fff 5px,#ededed 5px,#ededed 10px)}
.month-job-line.job-completed strong{text-decoration:line-through;text-decoration-thickness:1px}
@media(max-width:1100px) and (min-width:901px){
  .dispatch-board{grid-template-columns:repeat(4,minmax(0,1fr));overflow-x:visible}
  .dispatch-lane .job-card{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'time status' 'strong status' 'span span' 'small small';gap:2px 5px;padding:7px 6px}
  .dispatch-lane .job-card .job-time{font-size:8px}
  .dispatch-lane .job-card strong{font-size:9px;line-height:1.05}
  .dispatch-lane .job-card>span:not(.job-time){font-size:8px}
  .dispatch-lane .job-card small{font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dispatch-lane .job-card em{font-size:6px;padding-left:4px}
}
@media print{
  .shell,.body{min-height:0!important;height:auto!important}
}
@media print{
  .daily-print .hour-row{min-height:.68in}
  .daily-print .notes-panel textarea{min-height:8.15in}
  .month-print .month-cell{min-height:1.05in}
  .month-print .month-notes textarea{min-height:1.05in}
}
.mobile-sheet{display:none}
@media(max-width:900px){
  .mobile-sheet[hidden]{display:none}
  .mobile-sheet:not([hidden]){display:block;position:fixed;inset:0;z-index:60}
  .mobile-sheet-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;background:rgba(0,0,0,.42);padding:0}
  .mobile-sheet-panel{position:absolute;left:0;right:0;bottom:0;background:#fff;border-top:3px solid #000;padding:12px 14px calc(14px + env(safe-area-inset-bottom));max-height:72vh;overflow:auto}
  .mobile-sheet-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #000;padding-bottom:9px;margin-bottom:9px;font-size:10px;letter-spacing:1.2px}
  .mobile-sheet-panel header button{font-size:24px;line-height:1;border:0;padding:4px 8px}
  .mobile-sheet-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .mobile-sheet-links button{min-height:48px;text-align:left}
  .mobile-sheet-links button.active{background:#000;color:#fff}
}
@media(max-width:620px){
  .dispatch-board{grid-template-columns:1fr;overflow-x:visible}
  .dispatch-lane{min-height:220px}
  .dispatch-lane .job-card{min-width:0;width:100%}
  .mobile-sheet-links{grid-template-columns:1fr}
}
@media(max-width:1200px) and (min-width:901px){
  .dispatch-board{grid-template-columns:repeat(4,minmax(0,1fr));overflow-x:visible}
  .dispatch-lane .job-card{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'time status' 'strong status' 'span span' 'small small';gap:2px 6px;padding:8px 7px}
  .dispatch-lane .job-card .job-time{font-size:9px}.dispatch-lane .job-card strong{font-size:10px;line-height:1.08}.dispatch-lane .job-card>span:not(.job-time){font-size:9px}.dispatch-lane .job-card small{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dispatch-lane .job-card em{font-size:6.5px;padding-left:5px}
}
@media(max-width:900px){.dispatch-board{grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:visible}}
@media(max-width:620px){.dispatch-board{grid-template-columns:1fr;overflow-x:visible}}
/* Owner-preview refinement */
.primary-demo{background:#000;color:#fff;border-color:#000;padding:10px 15px}.primary-demo:hover{background:#222}.demo-jumps{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.demo-jumps button{min-height:42px}.owner-value-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #000;border-bottom:0}.owner-value-strip>div{padding:13px 15px;border-right:1px solid #000;display:grid;gap:2px}.owner-value-strip>div:last-child{border-right:0}.owner-value-strip b{font-size:20px;letter-spacing:-.5px}.owner-value-strip span{font-size:8px;font-weight:800;letter-spacing:1px;color:#555}.office-box>span:first-child{font-size:8px;letter-spacing:1.3px;font-weight:800;color:#555}.owner-preview .presentation-grid{margin-top:0}
@media(max-width:900px){.owner-value-strip{grid-template-columns:1fr 1fr}.owner-value-strip>div:nth-child(2){border-right:0}.owner-value-strip>div:nth-child(-n+2){border-bottom:1px solid #000}}
@media(max-width:620px){.owner-value-strip{grid-template-columns:1fr 1fr}.owner-value-strip b{font-size:17px}.demo-jumps{display:grid;grid-template-columns:1fr}.demo-jumps button{width:100%}.presentation-hero p{font-size:14px}.presentation-hero h2{font-size:42px}}
@media(max-width:620px){.owner-preview .page-head{display:grid;grid-template-columns:1fr;align-items:start}.owner-preview .page-actions{width:100%}.owner-preview .page-actions .primary-demo{width:100%;white-space:nowrap}}
.customer-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.customer-actions button{padding:7px 10px;font-size:10px}
.activity-panel{margin-top:18px;border:1px solid #000}.activity-panel>.section-label{padding:10px 12px;border-bottom:1px solid #000}.activity-row{display:grid;grid-template-columns:150px 1fr 190px;gap:12px;padding:9px 12px;border-bottom:1px solid #ddd;align-items:center;font-size:10px}.activity-row:last-child{border-bottom:0}.activity-row b{text-transform:uppercase}.activity-row time{text-align:right;color:#666}.team-row{display:grid;grid-template-columns:1fr auto;gap:3px 8px;border-top:1px solid #ddd;padding:8px 0}.team-row small{grid-column:1/-1;color:#666}@media(max-width:620px){.activity-row{grid-template-columns:1fr}.activity-row time{text-align:left}.team-panel{grid-column:1/-1}}
.schedule-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.date-nav{display:flex;align-items:center;border:1px solid #000;border-radius:5px;overflow:hidden;background:#fff}.date-nav button{border:0;border-right:1px solid #000;border-radius:0;min-width:42px;min-height:38px;padding:8px 11px;background:#fff}.date-nav button:last-child{border-right:0;border-left:1px solid #000}.date-nav strong{min-width:170px;padding:0 12px;text-align:center;font-size:11px;white-space:nowrap}.date-nav button:hover{background:#f2f2f2}@media(max-width:620px){.schedule-controls{width:100%;display:grid;grid-template-columns:1fr}.date-nav{width:100%;display:grid;grid-template-columns:auto auto 1fr auto}.date-nav strong{min-width:0;font-size:10px}.schedule-controls .seg{width:100%}.schedule-controls .seg button{flex:1}}

/* Production secure-access gate. Public preview bypasses this screen. */
.login-gate{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--soft);color:var(--ink)}
.login-card{width:min(100%,460px);display:grid;gap:16px;border:2px solid var(--black);background:var(--white);padding:28px;box-shadow:10px 10px 0 rgba(0,0,0,.08)}
.login-brand{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:14px}
.login-brand b{font-size:24px;letter-spacing:-.03em}.login-brand span{font-size:11px;font-weight:800;letter-spacing:.12em}
.login-card h1{margin:0;font-size:clamp(30px,8vw,44px);line-height:.95;text-transform:uppercase}.login-card p,.login-card small{color:var(--muted);line-height:1.55}
.login-card form,.login-card label{display:grid;gap:8px}.login-card label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.login-card input{min-height:48px;width:100%;border:1px solid var(--line);border-radius:5px;background:#fff;padding:10px 12px;font-size:16px;color:var(--ink)}
.login-card input:focus{outline:3px solid rgba(0,0,0,.16);outline-offset:2px;border-color:var(--black)}
.login-submit{min-height:48px;border:0;border-radius:5px;background:var(--black);color:var(--white);font-weight:900;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}
.login-submit:disabled{opacity:.55;cursor:wait}.login-error{min-height:20px;color:#a40000;font-size:13px;font-weight:700}
@media(max-width:620px){.login-gate{padding:16px}.login-card{padding:22px;box-shadow:6px 6px 0 rgba(0,0,0,.08)}}
