/* EMO Free: additions on top of emo.css (same tokens: --ink --paper --red --deep --peach --orange, Archivo 62% + JetBrains Mono) */
.top .logo{flex:none}.logo .wm b,.logo .wm span{white-space:nowrap}
.top .cta{align-items:center}
@media(max-width:1440px){.nav{display:none}}
@media(max-width:760px){.who .nm,.top .cta a.btn-outline{display:none}}
.logo .wm span.free{color:var(--orange)}
.who{display:flex;align-items:center;gap:10px;font:700 13px var(--display);letter-spacing:.08em;text-transform:uppercase}
.who img{width:34px;height:34px;border:2px solid var(--ink);border-radius:99px}
.who form{margin:0}
.hero.small{padding:40px 0 18px}.hero.small h1{font-size:clamp(54px,8vw,120px)}

/* ---------- slots (home + dashboard) ---------- */
.slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding-right:14px}
@media(max-width:1100px){.slots{grid-template-columns:1fr 1fr}}@media(max-width:720px){.slots{grid-template-columns:1fr}}
.slot{position:relative;display:flex;flex-direction:column;border:2px solid var(--ink);background:var(--paper);padding:22px;box-shadow:12px 12px 0 var(--orange);min-height:420px}
.slot.always{background:var(--ink);color:#fff;box-shadow:12px 12px 0 var(--red)}
.slot .hd{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px solid currentColor;padding-bottom:10px}
.slot .hd .no{white-space:nowrap;font:500 12px var(--mono);color:var(--red);text-transform:uppercase;letter-spacing:.06em}.slot.always .hd .no{color:var(--orange)}
.slot .hd .kind{text-align:right;font:500 11.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.slot.always .hd .kind{color:#bbb}
.slot h3{margin:18px 0 0;font-size:clamp(40px,4.4vw,62px);word-break:break-word}
.slot p{margin:14px 0 0;color:var(--muted);font-size:15.5px}.slot.always p{color:#ccc}
.slot .grow{flex:1}
.slot .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.slot .acts .btn{min-height:42px;padding:0 14px;font-size:13px}
.slot.always .btn-outline{border-color:#fff;color:#fff}.slot.always .btn-outline:hover:not(:disabled){background:#fff;color:#111}
.slot.always .btn-dark{background:#fff;color:#111;border-color:#fff}.slot.always .btn-dark:hover:not(:disabled){background:var(--red);border-color:var(--red);color:#fff;box-shadow:6px 6px 0 #fff}
.slot.empty{border-style:dashed;box-shadow:none;background:repeating-linear-gradient(-45deg,var(--soft) 0 2px,transparent 2px 12px)}
.slot.empty.always{background:#111 repeating-linear-gradient(-45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 12px);border-color:var(--ink)}
.slot .plus{font-family:var(--display);font-weight:900;font-stretch:62%;font-size:120px;line-height:.8;margin-top:22px;color:var(--red)}
.slot.always .plus{color:var(--orange)}

.addr{display:flex;align-items:stretch;margin-top:16px;border:2px solid currentColor}
.addr code{flex:1;min-width:0;padding:10px 12px;font:700 15px var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.addr button{border:0;border-left:2px solid currentColor;background:transparent;color:inherit;font:700 12px var(--display);letter-spacing:.1em;text-transform:uppercase;padding:0 14px;cursor:pointer}
.addr button:hover{background:var(--red);color:#fff}
.addrnote{font:500 11.5px var(--mono);color:var(--muted);margin-top:6px}.slot.always .addrnote{color:#aaa}

.pill{display:inline-flex;align-items:center;gap:8px;font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:14px}
.pill i{width:12px;height:12px;border:2px solid currentColor;flex:none}
.pill.on i{background:#22c55e;border-color:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.25)}
.pill.sleep i{background:var(--peach);border-color:var(--peach)}
.pill.wait i{background:var(--orange);border-color:var(--orange);animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:.25}}
.pill.off i{background:transparent}
.pill.bad{color:var(--red)}.pill.bad i{background:var(--red);border-color:var(--red)}

.facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid currentColor;margin-top:16px}
.facts div{padding:10px 8px 0 0}
.facts b{display:block;font-family:var(--display);font-weight:900;font-stretch:62%;font-size:30px;line-height:.95}
.facts span{display:block;font:500 10.5px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:4px}.slot.always .facts span{color:#999}

.meter{height:12px;border:2px solid currentColor;margin-top:8px;position:relative}
.meter i{display:block;height:100%;background:var(--ink)}.slot.always .meter i,.srv .meter i{background:#fff}
.meter i.over{background:var(--red)!important}
.meterlbl{display:flex;justify-content:space-between;font:500 11.5px var(--mono);text-transform:uppercase;margin-top:6px;color:var(--muted)}.srv .meterlbl{color:#bbb}

.renew{margin-top:14px;padding:10px 12px;border:1px dashed currentColor;font-size:13.5px}
.renew.late{border:2px solid var(--red);background:rgba(223,61,39,.15)}

.console{margin-top:16px;border-top:1px solid currentColor;padding-top:12px}
.console pre{max-height:260px;margin:0;background:#0b0b0b;color:#ddd;border:1px solid #333}
.console form{display:flex;margin-top:8px;border:2px solid currentColor}
.console input{flex:1;min-width:0;border:0;background:transparent;color:inherit;font:500 14px var(--mono);padding:10px}
.console input:focus{outline:none}
.console button{border:0;border-left:2px solid currentColor;background:transparent;color:inherit;font:700 12px var(--display);letter-spacing:.1em;text-transform:uppercase;padding:0 14px;cursor:pointer}

.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:14px 20px;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--red);font-weight:700;z-index:90;max-width:min(640px,92vw)}
.toast.bad{background:var(--red);border-color:var(--red);color:#fff;box-shadow:6px 6px 0 var(--ink)}

/* ---------- builder extras ---------- */
.slotpick{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.slotpick button{text-align:left;border:2px solid #fff;background:transparent;color:#fff;padding:12px;cursor:pointer;font:inherit}
.slotpick button b{display:block;font-family:var(--display);font-weight:900;font-stretch:62%;font-size:26px;text-transform:uppercase;line-height:.95}
.slotpick button span{display:block;font-size:12.5px;color:#bbb;margin-top:4px}
.slotpick button[aria-pressed=true]{background:#fff;color:#111}.slotpick button[aria-pressed=true] span{color:#444}
.slotpick button:disabled{border-color:#444;color:#666;cursor:not-allowed}.slotpick button:disabled span{color:#666}
.srv input[type=text]{width:100%;font:500 15px var(--display);padding:0 14px;min-height:48px;border:2px solid #fff;background:#1b1b1b;color:#fff}
.namepreview{font:500 12px var(--mono);color:var(--peach);margin-top:8px}

/* ---------- admin ---------- */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));border-top:2px solid var(--ink);border-left:2px solid var(--ink);margin-bottom:40px}
.tiles div{border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:14px}
.tiles b{display:block;font-family:var(--display);font-weight:900;font-stretch:62%;font-size:46px;line-height:.9}
.tiles span{font:500 11px var(--mono);text-transform:uppercase;color:var(--muted)}
.tbl{width:100%;border-collapse:collapse;font-size:14px;margin-bottom:46px}
.tbl th{text-align:left;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--ink);padding:8px 6px}
.tbl td{border-bottom:1px solid var(--hair);padding:8px 6px;vertical-align:top}
.tbl td.mono,.tbl .mono{font:500 12px var(--mono)}
.tbl button{border:2px solid var(--ink);background:transparent;color:var(--ink);font:700 11px var(--display);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;cursor:pointer;margin:0 4px 4px 0}
.tbl button:hover{background:var(--ink);color:var(--paper)}.tbl button.danger:hover{background:var(--red);border-color:var(--red);color:#fff}
.tblwrap{overflow-x:auto}

.msg{max-width:760px;padding:80px 0 100px}
.msg h1{font-size:clamp(56px,9vw,120px);margin:20px 0 0}
.msg p{font-size:19px;margin:24px 0 32px}

@media (prefers-color-scheme:dark){
  .slot.always{background:#000;border-color:#333}
  .who img{border-color:#333}
  .toast{box-shadow:6px 6px 0 var(--red)}
}
