/* StorageSuite Core — front-end styles for units grid, forms, portal */
.ss-units{margin:2rem 0}
.ss-filters{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.2rem}
.ss-filters select,.ss-form input{padding:.55rem .8rem;border:1px solid #ccd3dd;border-radius:8px;font:inherit;background:#fff;color:#1c2733}
.ss-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.1rem}
.ss-card{border:1px solid #e2e7ee;border-radius:12px;padding:1.1rem 1.2rem;background:#fff;box-shadow:0 1px 3px rgba(16,32,56,.06)}
.ss-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}
.ss-card h3{margin:.1rem 0 .5rem;font-size:1.15rem}
.ss-card ul{list-style:none;margin:0 0 .9rem;padding:0;color:#4c5b6e;font-size:.92rem}
.ss-card li{margin:.2rem 0}
.ss-card footer{display:flex;justify-content:space-between;align-items:center}
.ss-price{font-weight:700;font-size:1.2rem;color:#0d1b2e}
.ss-price small{font-weight:400;color:#6a7a8e}
.ss-badge{display:inline-block;padding:.14rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#e7f0e7;color:#1d7a36}
.ss-status-reserved .ss-badge{background:#fdeeda;color:#9a6700}
.ss-status-occupied .ss-badge{background:#edeff2;color:#57606a}
.ss-status-maintenance .ss-badge{background:#fbe9e7;color:#b3261e}
.ss-btn{display:inline-block;background:#0d1b2e;color:#fff;border:0;border-radius:8px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none;cursor:pointer}
.ss-btn:hover{background:#1c3557}
.ss-muted{color:#8a97a5;font-size:.9rem}
.ss-form{max-width:460px;background:#fff;border:1px solid #e2e7ee;border-radius:12px;padding:1.2rem 1.4rem}
.ss-form label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.2rem;color:#33445a}
.ss-form p{margin:.6rem 0}
.ss-form input{width:100%;box-sizing:border-box}
.ss-hp{position:absolute;left:-9999px}
.ss-msg{font-weight:600;min-height:1.2em}
.ss-table-avail{width:100%;border-collapse:collapse;margin:1rem 0}
.ss-table-avail th,.ss-table-avail td{padding:.5rem .7rem;border-bottom:1px solid #e6eaf0;text-align:left;font-size:.95rem}
.ss-table-avail th{background:#f4f7fa}
.ss-portal-result{margin-top:1.2rem;background:#f7f9fc;border:1px solid #e2e7ee;border-radius:12px;padding:1rem 1.3rem}
@media (prefers-reduced-motion: no-preference){.ss-card:hover{transform:translateY(-2px);transition:transform .15s ease}}
