.wifi-device-panel{margin-top:1rem}.wifi-device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem}.wifi-device-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem;border:1px solid #cfddd7;border-radius:14px;background:#fff}.wifi-device-card strong{font-size:1.05rem}.wifi-device-card span,.wifi-device-card small{color:#49665e}.member-summary.outstanding strong{color:#9f342f}.invoice-pay{margin-left:.5rem;padding:.45rem .85rem;border-radius:999px;background:#006b5c;color:#fff;font-size:.82rem}.pay-outstanding{margin-top:.75rem;padding:.6rem 1rem;border-radius:999px;background:#006b5c;color:#fff}.invoice-pay:disabled,.pay-outstanding:disabled{cursor:wait;opacity:.65}.member-payment-notice{margin:1rem 0 0;padding:1rem 1.2rem;border-radius:14px;background:#def3e6;color:#075c43;font-weight:700}.member-payment-notice.cancelled{background:#fff0d4;color:#805600}@media(min-width:851px){.member-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
.member-summary.outstanding{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.member-summary.outstanding:hover{border-color:#d5ad54;box-shadow:0 8px 24px rgba(4,48,42,.14);transform:translateY(-2px)}.member-summary.outstanding span{text-decoration:underline;text-underline-offset:3px}
.wifi-access-point-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:.9rem}.wifi-access-point-card{padding:1rem;border:1px solid #cfddd7;border-radius:14px;background:#fff}.wifi-card-heading,.wifi-client-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.wifi-access-point-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:1rem 0 0;border:1px solid #d6e2de;border-radius:10px;overflow:hidden;background:#d6e2de}.wifi-access-point-card dl>div{display:grid;gap:.25rem;padding:.7rem;background:#f9fbfa}.wifi-access-point-card dt{color:#94712d;font-size:.68rem;font-weight:800;text-transform:uppercase}.wifi-access-point-card dd{margin:0;overflow-wrap:anywhere}.wifi-client-heading{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #cfddd7}.wifi-client-heading h4{margin:.2rem 0 0}@media(max-width:700px){.wifi-access-point-grid{grid-template-columns:1fr}.wifi-access-point-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
.wifi-summary{color:#49665e}.wifi-client-toolbar{display:grid;grid-template-columns:minmax(260px,2fr) minmax(190px,1fr);gap:.75rem;margin:1rem 0}.wifi-client-toolbar label{display:grid;gap:.35rem;color:#49665e;font-size:.78rem;font-weight:800}.wifi-client-toolbar input,.wifi-client-toolbar select{width:100%;min-height:44px;padding:.65rem .8rem;border:1px solid #bfd1ca;border-radius:10px;background:#fff;color:#082f2b;font:inherit}.wifi-flat-table-wrap{overflow-x:auto}.wifi-flat-table{width:100%;border-collapse:collapse;background:transparent}.wifi-flat-table th{padding:.7rem .65rem;border-bottom:2px solid #b9cdc5;color:#7d632d;font-size:.7rem;letter-spacing:.06em;text-align:left;text-transform:uppercase}.wifi-flat-table td{padding:.72rem .65rem;border-bottom:1px solid #d7e3de;vertical-align:middle}.wifi-flat-table tbody tr:hover{background:rgba(255,255,255,.55)}.wifi-flat-table td:first-child{min-width:175px}.wifi-flat-table td strong,.wifi-flat-table td small{display:block}.wifi-flat-table td small{margin-top:.16rem;color:#607b73}.wifi-signal{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}.wifi-signal i{width:.65rem;height:.65rem;border-radius:50%;background:#94a9a2}.wifi-signal.excellent i{background:#20b86b}.wifi-signal.good i{background:#78ad39}.wifi-signal.fair i{background:#e5aa32}.wifi-signal.weak i{background:#c64a40}.wifi-filter-empty{border:0;border-radius:0}.wifi-client-table tr[hidden]{display:none}@media(max-width:760px){.wifi-client-toolbar{grid-template-columns:1fr}.wifi-flat-table,.wifi-flat-table tbody,.wifi-flat-table tr,.wifi-flat-table td{display:block}.wifi-flat-table thead{display:none}.wifi-flat-table tr{padding:.7rem 0;border-bottom:1px solid #d7e3de}.wifi-flat-table td{display:flex;justify-content:space-between;gap:1rem;padding:.28rem 0;border:0;text-align:right}.wifi-client-table td:before{color:#7d632d;font-size:.68rem;font-weight:800;text-transform:uppercase}.wifi-client-table td:nth-child(1):before{content:'Enhed'}.wifi-client-table td:nth-child(2):before{content:'IP-adresse'}.wifi-client-table td:nth-child(3):before{content:'Via'}.wifi-client-table td:nth-child(4):before{content:'Frekvens'}.wifi-client-table td:nth-child(5):before{content:'Signal'}.wifi-flat-table td:first-child{min-width:0}.wifi-flat-table td:first-child>strong{max-width:65%;overflow-wrap:anywhere}.wifi-access-point-table td{display:block;text-align:left}.wifi-access-point-table td:first-child{font-size:1.05rem}.wifi-access-point-table td:not(:first-child){display:inline-flex;margin-right:1rem}.wifi-access-point-table td:not(:first-child):before{margin-right:.35rem;color:#7d632d;font-size:.68rem;font-weight:800}.wifi-access-point-table td:nth-child(2):before{content:'Model:'}.wifi-access-point-table td:nth-child(3):before{content:'SSID:'}.wifi-access-point-table td:nth-child(4):before{content:'Kanal:'}.wifi-access-point-table td:nth-child(5):before{content:'Firmware:'}.wifi-access-point-table td:nth-child(6):before{content:'Oppetid:'}}
.wifi-client-table th button{display:inline-flex;align-items:center;gap:.35rem;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.wifi-client-table th button:hover,.wifi-client-table th button.active{color:#006b5c}.wifi-client-table th button i{width:1em;font-style:normal}
.member-products{display:block;border-top:1px solid #d7e3de}.member-card{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:.75rem;min-height:0;padding:.72rem .25rem;border:0;border-bottom:1px solid #d7e3de;border-radius:0;background:transparent}.member-card:hover{background:#f7faf8}.member-card-icon{width:30px;height:30px;border-radius:8px;font-size:1rem}.member-card small{font-size:.68rem}.member-card h4{display:inline;margin:0 .5rem 0 0;font-size:1rem}.member-card p{display:inline;font-size:.88rem}.member-card .member-badge{justify-self:end}@media(max-width:650px){.member-card{grid-template-columns:28px minmax(0,1fr) auto;padding:.75rem 0}.member-card-icon{width:27px;height:27px}.member-card h4,.member-card p{display:block}.member-card p{margin-top:.2rem}.member-card .member-badge{grid-column:auto}}
.member-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:1rem;margin-top:1.2rem;padding-top:1.2rem;border-top:1px solid #d7e3de}.member-profile-form>div{display:grid;gap:.4rem}.member-profile-form label{font-weight:800}.member-profile-form input{width:100%;min-height:46px;padding:.7rem .85rem;border:1px solid #bfd1ca;border-radius:10px;background:#fff;font:inherit}.member-profile-form button{min-height:46px}.member-profile-help{grid-column:1/-1;margin:0;color:#60716d;font-size:.88rem}@media(max-width:760px){.member-profile-form{grid-template-columns:1fr}.member-profile-form button{width:100%}}
