:root{--ink:#153331;--muted:#61736d;--teal:#087f72;--pale:#e4f3ed;--bg:#f4f6f3;--line:#dce4dd;--amber:#986216;--sand:#fff1d8;--blue:#2464a0;--bluebg:#e7effb;--red:#a83434;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button,.button{border:1px solid var(--teal);border-radius:7px;background:var(--teal);color:white;min-height:43px;padding:10px 18px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.48;cursor:not-allowed}.secondary{background:white;border-color:var(--line);color:var(--ink)}.danger{background:var(--red);border-color:var(--red)}.quiet{background:none;border-color:transparent;color:var(--muted);padding:8px}.small{font-size:12px;min-height:33px;padding:7px 12px}a{color:var(--teal)}input,select,textarea{border:1px solid var(--line);background:white;border-radius:6px;color:var(--ink);padding:12px;min-width:0;width:100%}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--teal);outline-offset:3px}textarea{resize:vertical}label{font-size:12px;font-weight:500;color:var(--muted);display:grid;gap:8px}h1,h2,h3,p{margin-top:0}h1{font-size:38px;line-height:1.15;letter-spacing:-.035em}h2{font-size:27px;letter-spacing:-.025em}h3{font-size:18px;margin-bottom:14px}p{line-height:1.65}.muted{color:var(--muted)}.caption{font-size:12px;line-height:1.55}.eyebrow{font-size:11px;letter-spacing:.09em;font-weight:700;text-transform:uppercase;color:var(--teal)}.flex-row{display:flex;gap:16px;align-items:center}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1}.stack{display:grid;gap:18px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;border:1px solid var(--line);border-radius:10px;padding:22px}.badge{display:inline-block;background:var(--pale);color:var(--teal);border-radius:20px;font-size:11px;font-weight:650;padding:6px 11px;white-space:nowrap}.pending,.maintenance{background:var(--sand);color:var(--amber)}.confirmed{background:var(--bluebg);color:var(--blue)}.completed,.cancelled,.transfer{background:#e9ede9;color:var(--muted)}.active{background:#bce6d7;color:#065c52}.error-text{color:var(--red)}.notice{position:fixed;z-index:1000;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;padding:14px 20px;max-width:min(600px,90vw);box-shadow:0 5px 30px #0002}.notice.error{background:#8f2d2d}[hidden]{display:none!important}dialog{border:1px solid var(--line);border-radius:12px;max-width:1140px;width:calc(100vw - 40px);max-height:calc(100vh - 40px);padding:0;color:var(--ink);background:var(--bg)}dialog::backdrop{background:#142d2bc4}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);background:white;position:sticky;top:0;z-index:2}.dialog-head h2{font-size:23px;margin:0}.dialog-body{padding:24px}.dialog-foot{padding:18px 24px;background:white;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:2}.brand{font-size:25px;font-weight:800;letter-spacing:-.045em;text-decoration:none;color:var(--ink)}.site-header{height:80px;display:flex;align-items:center;gap:48px;border-bottom:1px solid var(--line);background:white;padding:0 max(28px,calc((100vw - 1312px)/2))}.site-header nav{display:flex;gap:30px;font-size:13px}.site-header nav a{color:var(--ink);text-decoration:none}.site-header .contact{margin-left:auto}.shell{max-width:1368px;margin:auto;padding:0 28px}.hero{display:grid;grid-template-columns:1.7fr 1fr;gap:80px;align-items:center;padding:55px 0 38px}.hero h1{font-size:clamp(40px,4.2vw,64px);max-width:650px;margin:16px 0 18px;letter-spacing:-.055em}.hero aside{background:#e9eedb;border-radius:15px;padding:28px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.hero aside p:last-child{margin-bottom:0}.filters{background:white;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1fr 1fr 1.3fr auto;gap:22px;align-items:end;padding:23px;margin-bottom:38px}.section-heading{margin:0 0 24px}.bike-card{padding:15px;display:flex;flex-direction:column;min-width:0}.bike-card .photo{height:235px;background:#e9ede7;position:relative;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center}.photo img{width:100%;height:100%;object-fit:contain;background:#e9ede7}.photo .badge{position:absolute;top:15px;left:15px}.placeholder{padding:35px;color:var(--muted);text-align:center;line-height:1.8}.bike-card .copy{padding:20px 8px 7px;display:flex;flex-direction:column;gap:13px;flex:1}.bike-card h3{font-size:23px;margin:0}.bike-card p{font-size:13px;margin:0}.bike-card .availability{font-size:14px;color:var(--teal);font-weight:550}.price{font-size:25px;letter-spacing:-.025em;font-weight:650}.price small{font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted)}.bike-card button{width:100%;margin-top:auto}.site-footer{border-top:1px solid var(--line);margin-top:50px;padding:28px 0 40px}.demo{background:#ecf0e8;font-size:11px;color:var(--muted);padding:7px 15px;text-align:center}.model-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:26px}.model-photo{height:360px}.form-grid{display:grid;gap:19px}.total{padding-top:18px;border-top:1px solid var(--line);font-size:20px;font-weight:650}.chat-messages{height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:10px 0}.message{padding:12px 15px;border-radius:8px;background:white;border:1px solid var(--line);max-width:90%;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.message.staff{align-self:flex-end;background:var(--pale);border:none}.message.system{background:var(--bluebg);font-size:12px;align-self:center;max-width:100%}.message time{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.message-form{display:flex;gap:10px;margin-top:15px;align-items:flex-end}.message-form textarea{min-height:70px}.legal{font-size:11px;color:var(--muted);line-height:1.7}.status-summary{padding:22px;background:var(--pale);border-radius:8px}.empty{padding:40px;text-align:center;color:var(--muted)}
.crm-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.sidebar{background:#123b36;color:#c3dad1;padding:30px 16px;display:flex;flex-direction:column;gap:30px;position:sticky;top:0;height:100vh}.sidebar .brand{color:white;padding:0 12px}.sidebar small{font-size:10px;letter-spacing:.08em;padding:0 12px;color:#a4c6bb}.sidebar nav{display:grid;gap:8px}.sidebar nav button{justify-content:start;background:none;border:0;font-weight:450;font-size:14px;color:inherit;padding:13px 18px}.sidebar nav button.selected{background:#28584d;color:white;font-weight:650}.sidebar .profile{margin-top:auto;padding:12px;font-size:13px}.crm-main{min-width:0}.topbar{height:72px;background:white;border-bottom:1px solid var(--line);padding:18px 30px;display:flex;gap:20px;align-items:center;font-size:13px}.topbar a{margin-left:auto}.crm-content{padding:28px 32px 40px}.crm-content>header{margin-bottom:24px}.crm-content h1{font-size:31px;margin-bottom:9px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0}.stat strong{display:block;font-size:29px;letter-spacing:-.04em;margin-bottom:7px}.stat small{color:var(--muted);font-size:12px}.rental-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:25px 0}.rental-toolbar select{width:auto;min-width:180px}.calendar-wrap{overflow:auto;border:1px solid var(--line);border-radius:9px;background:white}.calendar-grid{width:1202px}.calendar-head,.calendar-row{display:grid;grid-template-columns:236px 966px}.calendar-label{padding:18px;border-right:1px solid var(--line);position:sticky;left:0;background:white;z-index:2}.calendar-label small{display:block;font-size:10px;margin-top:8px;color:var(--muted)}.calendar-head{border-bottom:1px solid var(--line);font-size:12px;font-weight:650}.calendar-days{display:grid;grid-template-columns:repeat(7,138px)}.calendar-days>div{padding:18px 15px;border-right:1px solid var(--line)}.calendar-row{border-bottom:1px solid var(--line);height:76px}.timeline{position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent 137px,var(--line) 137px,var(--line) 138px)}.event-bar{position:absolute;top:17px;height:40px;min-height:0;padding:0 9px;border:0;border-radius:5px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;justify-content:start;color:var(--teal);background:#bce6d7;max-width:100%}.event-bar.confirmed{background:var(--bluebg);color:var(--blue)}.event-bar.maintenance{background:var(--sand);color:var(--amber)}.event-bar.transfer{background:#e9ede9;color:var(--muted)}.event-bar.overdue{background:#fde8e5;color:var(--red)}.legend{display:flex;gap:18px;flex-wrap:wrap;margin:18px 0}.pending-list{margin-top:24px}.request-line{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:15px 0}.request-line:last-child{border:0}.request-line p{margin:0 0 4px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}td,th{border-bottom:1px solid var(--line);padding:14px 12px;vertical-align:top}th{font-weight:550;color:var(--muted);white-space:nowrap}td .caption{display:block}.table-photo{width:68px;height:48px;object-fit:contain;background:var(--bg);border-radius:4px}.detail-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:20px}.detail-grid .chat-messages{height:400px}.rental-steps{display:flex;gap:12px;margin-bottom:22px}.rental-steps span{flex:1;background:#e9ede9;color:var(--muted);font-size:12px;padding:12px;border-radius:6px}.rental-steps span.done{background:var(--pale);color:var(--teal)}.key-value{display:grid;grid-template-columns:1fr 1fr;gap:16px}.key-value small{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}.login{max-width:520px;margin:10vh auto;padding:36px}.login h1{font-size:30px;margin-top:30px}.login .button{width:100%}.import-preview{margin-top:20px}.fields-edit{display:grid;gap:12px}.field-pair{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.inline-warning{padding:13px;border-radius:6px;background:var(--sand);color:var(--amber);font-size:12px;line-height:1.55}.scroll-note{font-size:11px;color:var(--muted)}
@media(max-width:1050px){.hero{gap:35px}.site-header{gap:24px}.site-header nav{gap:17px}.grid3{gap:16px}.filters{grid-template-columns:1fr 1fr}.crm-shell{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding:25px 10px}.crm-content{padding:25px 20px}.stats{gap:12px}.stat{padding:16px}.detail-grid{grid-template-columns:1fr}.detail-grid .chat-messages{height:250px}}
@media(max-width:720px){.site-header{padding:0 20px;height:68px;gap:12px}.site-header nav{display:none}.site-header .contact{font-size:11px;padding:9px;min-height:36px}.brand{font-size:23px}.shell{padding:0 20px}.hero{grid-template-columns:1fr;gap:20px;padding:30px 0}.hero h1{font-size:42px}.hero aside{display:none}.filters{padding:16px;gap:16px}.filters>label:last-of-type{grid-column:1/-1}.filters button{grid-column:1/-1}.grid3,.grid2,.model-layout{grid-template-columns:1fr}.grid3{gap:20px}.bike-card .photo{height:235px}.model-photo{height:240px}.section-heading h2{font-size:26px}.section-heading small{display:none}dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.dialog-head{padding:16px}.dialog-body{padding:16px}.dialog-foot{padding:14px 16px}.crm-shell{grid-template-columns:minmax(0,1fr)}.sidebar{height:auto;position:static;padding:16px 14px;gap:14px}.sidebar>small,.sidebar .profile{display:none}.sidebar nav{display:flex;overflow:auto;gap:7px}.sidebar nav button{white-space:nowrap;font-size:12px;min-height:36px;padding:10px}.sidebar>.brand{font-size:21px}.crm-content{padding:23px 14px}.topbar{height:52px;padding:12px 16px}.stats{grid-template-columns:1fr 1fr;gap:12px}.stat strong{font-size:26px}.rental-toolbar select{min-width:0;flex:1;width:100%}.request-line{gap:10px;flex-wrap:wrap}.request-line .grow{min-width:180px}.crm-content h1{font-size:29px}.rental-steps{gap:6px;overflow:auto}.rental-steps span{white-space:nowrap;font-size:10px;padding:10px 8px}.key-value{gap:12px}.login{margin:30px 16px;padding:24px}.field-pair{grid-template-columns:1fr 1fr auto;gap:7px}.card{padding:18px}.grid2 .card{min-width:0}}
input[type=checkbox]{width:auto;min-width:16px}#week{width:160px}.calendar-label strong{font-size:12px}.calendar-label{font-size:12px}.field-pair input{font-size:12px}

/* Keep the CRM navigation scroll inside its grid column on narrow screens. */
.sidebar,.sidebar nav{min-width:0}
