:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--primary:#E25303;--page-bg:#f4f5f6;--card-bg:#fff;--text:#171717;--muted:#666;--assumptions-bg:#f2f2f2;--success:#16803b;--warning-bg:#fff0f0;--warning-text:#7a271a;color:var(--text);background:var(--page-bg)}*{box-sizing:border-box}body{margin:0;background:var(--page-bg);color:var(--text)}header{height:68px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;font-size:18px;border-bottom:0}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand span{font-weight:800}.brand img{height:40px;width:auto;display:block}.headerContact{display:flex;align-items:center;gap:14px}.officeTel,.officeEmail{color:#fff;text-decoration:none;font-weight:750;font-size:15px;white-space:nowrap}main{max-width:760px;margin:auto;padding:14px}nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:14px}button{border:1px solid #ccc;border-radius:10px;padding:12px;background:#fff;font-weight:650}nav button.on,.primary{background:var(--primary);color:#fff;border-color:#111}.card{background:var(--card-bg);border-radius:14px;padding:18px;margin-bottom:12px;box-shadow:0 1px 5px #00000010}h1{font-size:24px;margin:0 0 14px}h2{font-size:17px;margin-top:24px}.note{font-size:13px;line-height:1.45;color:#555;background:#f4f4f4;padding:12px;border-radius:9px;margin-bottom:15px}label{display:block;font-size:13px;font-weight:650;margin:13px 0}input,select{width:100%;font:inherit;font-size:16px;padding:12px;margin-top:6px;border:1px solid #bbb;border-radius:9px;background:white}.primary{width:100%;margin-top:8px}.good{border-left:5px solid var(--success)}.bad{border-left:5px solid #b42318}.big{font-size:21px;font-weight:750}.muted{color:var(--muted);font-size:13px}.fleetrow{display:grid;grid-template-columns:1fr 90px 60px;gap:8px;align-items:center;border-top:1px solid #eee;padding:10px 0}.fleetrow input{margin:0;padding:7px}.fleetrow input[type=checkbox]{width:22px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px;border-bottom:1px solid #eee;font-size:14px}th{font-size:12px;color:var(--muted)}@media(max-width:480px){main{padding:10px}.card{padding:15px}nav button{font-size:12px;padding:10px 4px}}
.scroll{overflow-x:auto}

.fleethead{display:grid;grid-template-columns:1fr 90px 60px;gap:8px;font-size:11px;font-weight:700;color:var(--muted);padding:6px 0}.craneopen{text-align:left;border:0;padding:0;background:transparent;color:#171717;font-size:14px}

.resultHero{padding:22px}.resultSentence{font-size:16px;line-height:1.55;margin:10px 0 16px}.resultCrane{font-size:28px;font-weight:800;line-height:1.15;margin:6px 0 18px}.resultGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 16px}.resultGrid div{background:#f4f5f6;border-radius:10px;padding:12px}.resultGrid span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}.resultGrid b{font-size:17px}@media(max-width:480px){.resultGrid{grid-template-columns:1fr 1fr}.resultCrane{font-size:24px}}

.toolIntro{font-size:15px;line-height:1.55;color:#333;margin:0 0 16px}.assumptions{background:var(--assumptions-bg);border:2px solid var(--primary);padding:11px 13px 10px;border-radius:9px;margin-top:14px;margin-bottom:15px;font-size:13px}.assumptionsTitle{font-size:15px;font-weight:750;margin-bottom:6px}.assumptions ul{margin:0;padding-left:20px}.assumptions li{margin:6px 0;line-height:1.4}.radiusNote{margin-top:8px;font-size:12px;font-weight:650}

.fieldHint{font-size:12px;color:#777;margin:-5px 0 10px;line-height:1.35}

.dangerButton{width:100%;margin-top:18px;border-color:#b42318;color:#b42318;background:#fff}.dangerButton:active{background:#fff2f0}

.adminTitleRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.adminTitleRow h1{margin:0}.adminTitleRow button{padding:8px 12px}.hashText{display:block;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;margin-top:4px}.importSummary{line-height:1.65}

.historyRow{font-size:11px;padding:5px 0;border-top:1px solid #ddd}.note details{margin-top:8px}.note summary{cursor:pointer;font-weight:650}

.archiveRow{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #eee;padding:10px 0}.archiveRow button{padding:8px 12px}

.drawingCard{background:var(--card-bg);border-radius:14px;padding:18px;margin-bottom:12px;box-shadow:0 1px 5px #00000010;overflow:hidden}.drawingCard svg{width:100%;height:auto;display:block}.drawingCard .primary{margin-top:14px}.marginOnlyNote{background:var(--warning-bg);border:1px solid #d92d20;color:var(--warning-text);border-radius:9px;padding:10px 12px;margin:12px 0;font-size:12px;line-height:1.4}.marginOnlyRow{background:var(--warning-bg)}.marginOnlyRow td{color:var(--warning-text)}.marginOnlyTag{display:inline-block;margin-top:5px;padding:3px 6px;border-radius:5px;background:#d92d20;color:#fff;font-size:9px;font-weight:800;letter-spacing:.03em}

@media(max-width:480px){.headerContact{gap:10px}.officeTel,.officeEmail{font-size:13px}.brand{gap:8px}.brand span{font-size:16px}}

.brandingGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.colorGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.colorGrid label{margin:6px 0}.colorGrid input[type=color]{height:42px;padding:4px}textarea{width:100%;min-height:90px;font:inherit;font-size:15px;padding:10px;margin-top:6px;border:1px solid #bbb;border-radius:9px;resize:vertical;background:white}h3{font-size:15px;margin:24px 0 8px}@media(max-width:560px){.brandingGrid{grid-template-columns:1fr}.colorGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.colorGrid label{font-size:12px}}@media(max-width:380px){.colorGrid{grid-template-columns:1fr}}

.adminMain{max-width:980px}.adminTop{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 12px}.adminTop h1{margin:0}.adminTop p{margin:3px 0 0}.adminTabs{display:flex;grid-template-columns:none;overflow-x:auto;gap:6px;padding:2px 0 8px;margin-bottom:12px;scrollbar-width:thin}.adminTabs button{flex:0 0 auto;white-space:nowrap;min-width:112px}.adminPane>.card{max-width:760px;margin-left:auto;margin-right:auto}.adminPane[hidden]{display:none!important}@media(max-width:600px){.adminMain{padding:10px}.adminTabs{margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px}.adminTabs button{font-size:12px;padding:10px}.adminTop{align-items:flex-start}.adminTop button{padding:8px 10px}}

.adminSectionPicker{max-width:760px;margin:0 auto 12px}.adminSectionPicker label{margin:0;font-size:12px;color:var(--muted)}.adminSectionPicker select{margin-top:6px;background:var(--card-bg);font-weight:750;border:1px solid #bbb;box-shadow:0 1px 5px #0000000a}.adminTabs{display:none!important}

.currentLogoBox{margin:8px 0 12px;padding:12px;border:1px solid #ddd;border-radius:10px;background:var(--page-bg);display:flex;align-items:center;justify-content:space-between;gap:16px}.currentLogoBox span{font-size:12px;font-weight:750;color:var(--muted)}.currentLogoBox img{max-width:180px;max-height:70px;object-fit:contain;background:#fff;border-radius:6px;padding:6px;border:1px solid #ddd}
.userCard{border:1px solid #ddd;border-radius:12px;padding:14px;margin:10px 0;background:var(--card-bg)}.userCardTop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.userState{font-size:11px;font-weight:800;border-radius:999px;padding:4px 8px}.activeUser{background:#e8f5ec;color:#176b35}.inactiveUser{background:#f2f2f2;color:#666}.userActions{display:flex;gap:8px;margin-top:8px}.userActions button{flex:1}@media(max-width:520px){.userActions{flex-direction:column}}
.userNameGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.userNameGrid label{min-width:0}@media(max-width:380px){.userNameGrid{grid-template-columns:1fr}}
.buttonLink{display:inline-block;border:1px solid #ccc;border-radius:10px;padding:12px;background:#fff;font-weight:650;color:var(--text);text-decoration:none;margin-top:8px}#currentAppIcon{width:96px!important;height:96px!important;max-width:96px!important;max-height:96px!important;padding:0!important;border-radius:20px!important}

/* Integrated Drawing Builder tab */
#drawing{width:100%}.drawingFrame{display:block;width:100%;height:1100px;border:0;background:transparent;border-radius:12px}@media(max-width:850px){.drawingFrame{height:1250px}}
