/* FLEET STATUS CARD (replaced floating project cards) */

/* PIN */
.pin{position:absolute;z-index:20;transform:translate(-50%,-50%);cursor:grab;}
.pin.dragging{cursor:grabbing;z-index:60;}
.pin-body{display:flex;flex-direction:column;align-items:center;}
.pin-circle{width:72px;height:72px;border-radius:50%;border:2px solid var(--borderb);background:var(--panel-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s;position:relative;backdrop-filter:blur(6px);cursor:pointer;}
.pin.open .pin-circle,.pin-circle:hover{border-color:var(--accent);box-shadow:0 0 26px var(--glow);}
.pin-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;border:1.5px solid var(--accent);opacity:0;animation:ring 2.5s ease-out infinite;pointer-events:none;}
@keyframes ring{0%{transform:translate(-50%,-50%) scale(1);opacity:.5}100%{transform:translate(-50%,-50%) scale(2.6);opacity:0}}
.pin-ico{font-size:22px;}.pin-cnt{font-family:Arial,Helvetica,sans-serif;font-size:11px;color:var(--muted);margin-top:1px;}
.pin-lbl{margin-top:8px;font-family:'Hanken Grotesk',sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:rgba(4,7,13,.92);padding:3px 12px;border-radius:3px;border:1px solid var(--border);white-space:nowrap;cursor:pointer;}
.pin-drag{font-family:Arial,Helvetica,sans-serif;font-size:7px;color:var(--muted);opacity:.45;margin-top:3px;}
.pin-edit-btn{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;box-shadow:0 0 10px var(--glow);border:1.5px solid var(--panel-bg);z-index:2;transition:transform .15s;}
.pin-edit-btn:hover{transform:scale(1.15);}

/* EXPANDED CARD */
.exp-card{position:absolute;transform:translate(-50%,-50%);z-index:25;pointer-events:all;opacity:0;transition:opacity .28s ease;}
.exp-card.vis{opacity:1;}
.exp-box{width:170px;border-radius:8px;border:1.5px solid var(--borderb);background:var(--panel-bg);backdrop-filter:blur(14px);overflow:hidden;}
.exp-box.decomm-card{cursor:pointer;border-color:rgba(204,40,80,.5);}
.exp-box.decomm-card:hover{border-color:var(--decomm);box-shadow:0 0 16px rgba(204,40,80,.2);}
.exp-box.link-card{cursor:pointer;}
.exp-box.link-card:hover{border-color:var(--accent);box-shadow:0 0 16px var(--glow);}
.exp-head{padding:10px 12px 7px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(50,100,180,.15);}
.exp-head-icon{font-size:20px;line-height:1;}
.exp-head-label{font-family:'Hanken Grotesk',sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:1;}
.exp-head-bar{height:2px;width:100%;}
.exp-rows{padding:8px 12px 10px;}
.exp-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0;border-bottom:1px solid rgba(50,100,180,.08);}
.exp-row:last-child{border-bottom:none;}
.exp-row-lbl{font-family:Arial,Helvetica,sans-serif;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);}
.exp-row-num{font-family:'Hanken Grotesk',sans-serif;font-size:18px;font-weight:700;line-height:1;}
.exp-row-num.available{color:var(--available);}
.exp-row-num.reserved{color:var(--reserved);}
.exp-row-num.maintenance{color:var(--maintenance);}
.exp-row-num.decomm{color:var(--decomm);}
.exp-row-num.inprod{color:var(--inprod);}
.exp-link-text{font-family:'Hanken Grotesk',sans-serif;font-size:13px;font-weight:600;color:var(--accent);padding:6px 0 2px;text-align:center;}

/* edit overlay */
#modalRoot{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;pointer-events:none;}
#modalRoot > *{pointer-events:auto;}
#modalRoot:empty{display:none;}
.edit-overlay{position:fixed;inset:0;z-index:600;display:none;pointer-events:all;background:var(--overlay-bg);}
.edit-overlay.open{display:flex;align-items:center;justify-content:center;}
.edit-panel{position:relative;background:var(--panel-bg);border:1.5px solid var(--borderb);border-top:2px solid var(--accent);border-radius:6px;padding:20px;width:340px;box-shadow:0 0 40px var(--glow);backdrop-filter:blur(16px);max-height:82vh;overflow-y:auto;}
.ep-title{font-family:'Hanken Grotesk',sans-serif;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;color:var(--accent);}
.ep-section{font-family:'Hanken Grotesk',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin:12px 0 6px;padding-top:8px;border-top:1px solid var(--border);}
.ep-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:8px;}
.ep-label{font-size:11px;color:var(--muted);flex:1;font-family:Arial,Helvetica,sans-serif;}
.ep-input{width:70px;background:var(--input-bg);border:1px solid var(--border);border-radius:3px;color:var(--text);padding:5px 8px;font-size:13px;font-family:Arial,Helvetica,sans-serif;text-align:center;outline:none;transition:border-color .15s;}
.ep-input:focus{border-color:var(--accent);}
.ep-input-wide{width:120px;background:var(--input-bg);border:1px solid var(--border);border-radius:3px;color:var(--text);padding:5px 8px;font-size:11px;font-family:Arial,Helvetica,sans-serif;outline:none;transition:border-color .15s;}
.ep-input-wide:focus{border-color:var(--accent);}
.ep-actions{display:flex;gap:8px;margin-top:14px;}
.btn{flex:1;padding:8px;border-radius:3px;font-size:12px;font-family:'Hanken Grotesk',sans-serif;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:1px solid var(--border);transition:all .15s;}
.btn-p{background:var(--accent);border-color:var(--accent);color:#fff;}.btn-p:hover{opacity:.85;}
.btn-s{background:transparent;color:var(--text);}.btn-s:hover{background:rgba(20,40,80,.5);}

