*{box-sizing:border-box}body{margin:0;background:#090d14;color:#e8edf6;font-family:Inter,system-ui,Arial,sans-serif}nav{background:#0e1625;border-bottom:1px solid #202b3d;display:flex;justify-content:space-between;align-items:center;padding:20px max(18px,calc((100% - 1180px)/2))}nav a{color:#c9d5e7;text-decoration:none;margin-left:17px}.brand{color:#fff!important;font-weight:900;margin:0!important}main{max-width:1180px;margin:32px auto;padding:0 18px}.narrow{max-width:560px}.card{background:#111927;border:1px solid #263247;border-radius:16px;padding:24px;margin-bottom:20px}.top{display:flex;justify-content:space-between;align-items:center}.top p,.muted,.hero span{color:#8492a8}.hero p,.cat{color:#6da1ff}.hero h1{font-size:42px}.button,button{border:0;border-radius:10px;background:#3977f6;color:#fff;padding:11px 16px;font-weight:800;text-decoration:none;cursor:pointer}.secondary,.small{background:#24334b}.small{padding:7px 10px}form{display:grid;gap:16px}.formgrid{grid-template-columns:1fr 1fr}.full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;font-weight:700}input,select,textarea{background:#0b111c;color:#f0f4fa;border:1px solid #34425a;border-radius:9px;padding:12px;font:inherit}.check{flex-direction:row;align-items:center}.check input{width:auto}.mapbar{display:flex;gap:8px}.mapbar input{flex:1}#map{height:350px;border-radius:12px;margin-top:10px}.accord details{border:1px solid #2c394e;border-radius:11px;margin:9px 0;background:#0d1420}.accord summary{padding:14px;font-weight:900;cursor:pointer}.accord summary span{color:#8492a8}.choices{padding:0 12px 12px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.choices label{flex-direction:row;justify-content:space-between;align-items:center;background:#131e2e;padding:10px;border-radius:8px}.choices small,.eventlist small{display:block;color:#8290a5}.choices input{width:90px}.table{display:grid;gap:8px}.table>div{display:grid;grid-template-columns:1.2fr 2fr 1fr 1fr;gap:10px;align-items:center;padding:12px;background:#0c1320;border-radius:8px}.table a{color:#8ab2ff}.eventlist{display:grid;gap:8px}.eventlist a{display:flex;gap:15px;padding:12px;background:#0c1320;border:1px solid #253247;border-radius:10px;color:inherit;text-decoration:none}.eventlist time{color:#78a6ff;font-weight:900;min-width:60px}.badge{float:right;background:#193668;color:#8ab2ff;padding:6px 10px;border-radius:20px}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.calendar-head{display:flex;justify-content:space-between;align-items:center}.week,.calendar{display:grid;grid-template-columns:repeat(7,1fr)}.week b{text-align:center;padding:10px;color:#8290a5}.day{min-height:110px;border:1px solid #243044;padding:6px;background:#0d1420}.day.muted{background:#090e17;color:#4f5b6d}.cal-event{display:block;margin-top:5px;padding:5px;background:#162b50;border-left:3px solid #4b86ff;color:#dce9ff;text-decoration:none;border-radius:5px;font-size:12px}.cal-event small{display:block;color:#9eb5d9}.invoice-row{display:grid;grid-template-columns:2fr .5fr 1fr;gap:8px}.invoice-head{display:flex;justify-content:space-between}.invoice table{width:100%;border-collapse:collapse;margin:25px 0}.invoice th,.invoice td{padding:12px;border-bottom:1px solid #2b374a;text-align:left}.totals{margin-left:auto;max-width:360px}.totals p{display:flex;justify-content:space-between}.alert{background:#401b22;padding:12px;border-radius:8px}@media(max-width:720px){nav{flex-direction:column;align-items:flex-start;gap:12px}nav a{margin:0 9px 0 0}.formgrid,.choices{grid-template-columns:1fr}.table>div{grid-template-columns:1fr 1fr}.invoice-row{grid-template-columns:1fr}.details{grid-template-columns:1fr}.day{min-height:80px;padding:3px}.card{padding:14px}}@media print{nav,button{display:none!important}body{background:#fff;color:#000}.card{border:0;background:#fff;color:#000}.invoice table th,.invoice table td{border-color:#ccc}}
.jobsheet .details{grid-template-columns:repeat(4,1fr)}
.jobsheet .details .wide{grid-column:span 2}
.note{background:#0c1320;border-left:4px solid #3977f6;padding:12px 16px;border-radius:8px;margin:18px 0}
.equipment-sheet{display:grid;gap:8px;margin-bottom:20px}
.equipment-sheet>div{display:grid;grid-template-columns:1fr 3fr .7fr;gap:12px;align-items:center;background:#0c1320;border:1px solid #253247;padding:12px;border-radius:9px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.finance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}
.finance-grid>div{background:#111927;border:1px solid #263247;border-radius:14px;padding:18px}
.finance-grid small{display:block;color:#8492a8;margin-bottom:8px}
.finance-grid b{font-size:20px}
.section-head{display:flex;align-items:center;justify-content:space-between}
.section-head a{color:#8ab2ff}
@media(max-width:720px){.jobsheet .details,.finance-grid{grid-template-columns:1fr 1fr}.jobsheet .details .wide{grid-column:1/-1}.equipment-sheet>div{grid-template-columns:1fr}.finance-grid b{font-size:16px}}
@media print{.finance,.actions{display:none!important}.jobsheet .card{padding:0}.equipment-sheet>div{background:#fff;border-color:#ccc;color:#000}}

.public-booked{cursor:default;text-align:center;padding:10px 5px;background:#173b78;border-left:3px solid #4b86ff;color:#dce9ff;user-select:none}
.public-booked b{letter-spacing:.5px}

.dtwrap{display:grid;grid-template-columns:1fr auto;gap:8px}.picker{width:auto;padding:0 14px;font-size:17px}
.avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid #30405a}.avatar.placeholder{display:grid;place-items:center;background:#1d4d9b;font-size:28px;font-weight:800}
.profilebox{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.status{margin-left:auto;padding:6px 10px;border-radius:999px;font-style:normal;font-size:12px}.status-planning{background:#173b78}.status-confirmed{background:#155e4b}.status-loading{background:#704f13}.status-running{background:#6a2b8a}.status-completed{background:#245b35}.status-cancelled{background:#6c2830}
.eventlist>a{display:flex;align-items:center;gap:14px}

.equipment-admin{display:grid;gap:10px}.equipment-admin article{display:grid;grid-template-columns:72px 1fr 110px 170px;gap:14px;align-items:center;background:#0c1320;border:1px solid #253247;border-radius:12px;padding:12px}.equipment-admin article.inactive{opacity:.55}.equipment-thumb{width:72px;height:72px;object-fit:cover;border-radius:10px;background:#172235}.equipment-thumb.placeholder{display:grid;place-items:center;font-size:28px}.equipment-info h3{margin:3px 0}.equipment-info p{margin:2px 0;color:#c6d0df}.equipment-info small,.equipment-stock small{display:block;color:#8290a5}.equipment-stock{text-align:right}.equipment-actions{display:flex;gap:7px;justify-content:flex-end}.equipment-actions form{display:block}.danger{background:#7b2832}.equipment-photo-preview{max-width:220px;max-height:180px;object-fit:cover;border-radius:12px;border:1px solid #34425a}@media(max-width:760px){.equipment-admin article{grid-template-columns:60px 1fr}.equipment-thumb{width:60px;height:60px}.equipment-stock{text-align:left}.equipment-actions,.equipment-stock{grid-column:2}.equipment-actions{justify-content:flex-start}}

/* V3.4.1 equipment UI */
.equipment-admin{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px!important}
.equipment-admin article{display:flex!important;flex-direction:column;align-items:stretch!important;gap:12px!important;padding:0!important;overflow:hidden;background:#0b1422!important;border:1px solid #26354b!important;border-radius:16px!important}
.equipment-admin .equipment-thumb{width:100%!important;height:170px!important;border-radius:0!important;object-fit:cover;background:#0a111d!important}
.equipment-admin .equipment-thumb.placeholder{display:grid!important;place-items:center;font-size:46px}
.equipment-admin .equipment-info{padding:0 18px}
.equipment-admin .equipment-info .cat{display:inline-block;padding:5px 9px;border-radius:999px;background:#173465;color:#8eb8ff;font-size:12px}
.equipment-admin .equipment-info h3{font-size:20px;margin:10px 0 4px}
.equipment-admin .equipment-info p{min-height:20px}
.equipment-admin .equipment-stock{display:flex;justify-content:space-between;align-items:center;text-align:left!important;padding:0 18px}
.equipment-admin .equipment-stock b{font-size:18px}
.equipment-admin .equipment-stock small{padding:5px 9px;border-radius:999px;background:#153b2c;color:#8fe0b6}
.equipment-admin .equipment-actions{padding:0 18px 18px;display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important}
.equipment-admin .equipment-actions .button,.equipment-admin .equipment-actions button{width:100%;text-align:center;box-sizing:border-box}
.equipment-admin article.inactive .equipment-stock small{background:#3a2830;color:#f2a9b1}
.job-equipment-choice{display:flex!important;align-items:center;justify-content:space-between;gap:15px}
.job-equipment-choice span{min-width:0}
.job-equipment-choice b{display:block}
.job-equipment-choice small{display:block;margin-top:4px;color:#8fa2bf}
.job-equipment-choice input[type=number]{width:92px;flex:0 0 92px}
@media(max-width:700px){.equipment-admin{grid-template-columns:1fr!important}.equipment-admin .equipment-stock,.equipment-admin .equipment-actions{grid-column:auto!important}}

.nav-logo{width:34px;height:34px;object-fit:contain;border-radius:8px;margin-right:9px;vertical-align:middle}
.brand{display:flex;align-items:center;gap:8px}
.company-logo-preview{max-width:180px;max-height:100px;object-fit:contain;background:#09111e;border:1px solid #263750;border-radius:12px;padding:10px}
.success{padding:12px 14px;margin-bottom:18px;border:1px solid #1d7048;border-radius:10px;background:#0d2c20}
/* AUTO SIZE LOGO */
.nav-logo {
    width: 48px !important;
    height: 48px !important;
    max-width: 48px !important;
    max-height: 48px !important;
    object-fit: contain !important;
    flex-shrink: 0;
}

.brand {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    white-space: nowrap;
}

.brand span {
    font-weight: 700;
}