/* SAWDA workspace: local vectors, measured status, motion with restraint. */
:root{--ink12:#12334b;--sub12:#526b7c;--line12:#dce7ef;--panel12:#fff;--soft12:#f1f7fa;--accent12:#087f83;--accent-soft12:#e5f6f2;--shadow12:0 8px 30px #15354b08}
html[data-appearance=night],html[data-theme=night],body.night{--ink12:#e1edf6;--sub12:#9bb2c3;--line12:#30465a;--panel12:#172a3b;--soft12:#20374a;--accent12:#75dec8;--accent-soft12:#244640;--shadow12:0 8px 30px #0002}
.workspace12{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink12);font-size:14px;line-height:1.55;background:var(--paper,#f5f8fc)}
.workspace12 button,.workspace12 input,.workspace12 select,.workspace12 textarea{font:inherit}
.workspace12 button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border-radius:11px;font-weight:600;transition:background .18s,box-shadow .18s,transform .18s}
.workspace12 button:hover:enabled{transform:translateY(-1px);box-shadow:0 4px 12px #123c4b10}
.workspace12 button:disabled{cursor:default;opacity:.55}
.workspace12 button.primary{background:#087f83;color:#fff;border:1px solid #087f83;box-shadow:0 3px 8px #087f8320}
.workspace12 button.secondary{background:var(--panel12);color:var(--ink12);border:1px solid var(--line12)}
.workspace12 input,.workspace12 select,.workspace12 textarea{border:1px solid var(--line12);background:var(--panel12);color:var(--ink12);border-radius:10px;padding:10px 12px;min-width:0;max-width:100%}
.workspace12 input:focus,.workspace12 select:focus,.workspace12 textarea:focus{outline:2px solid #2db79b55;outline-offset:1px}
.workspace12 label{color:var(--sub12);font-size:12px;font-weight:600;gap:7px}
.workspace12 h1,.workspace12 h2,.workspace12 h3{color:var(--ink12);letter-spacing:-.025em;line-height:1.25}
.workspace12 h1{font-size:27px}.workspace12 h2{font-size:28px}.workspace12 h3{font-size:17px}
.workspace12 .muted,.workspace12 .small,.workspace12 small{color:var(--sub12)}
.workspace12 .card{border:1px solid var(--line12);border-radius:20px;background:var(--panel12);padding:24px;box-shadow:var(--shadow12)}
.workspace12 .card-head{gap:12px}.workspace12 .eyebrow{letter-spacing:.16em;color:var(--accent12);font-size:10px;font-weight:750}
.workspace12 .topbar{padding:25px 0 24px;border-bottom:1px solid var(--line12);margin-bottom:28px}
.workspace12 .topbar h1{margin:6px 0 0}.workspace12 .workspace{padding:0 32px 24px;min-width:0}
.workspace12 #content{min-width:0}.workspace12 footer{border-top:1px solid var(--line12);padding:24px 0;margin-top:28px;color:var(--sub12)}
.workspace12 .sidebar{width:238px;padding:24px 14px;background:var(--panel12);border-right:1px solid var(--line12);box-shadow:8px 0 30px #15354b03}
.workspace12 .wordmark{padding:0 10px 20px;font-size:21px;gap:12px}.workspace12 .wordmark small{font-size:10px;letter-spacing:.2em}
.workspace12 .brand-mark{border-radius:14px;background:linear-gradient(145deg,#2bbd9d,#097b83);width:40px;height:40px;box-shadow:0 5px 12px #1ca18c28}
.workspace12 .sidebar nav{overflow-y:auto;scrollbar-width:thin;gap:2px;padding:0 0 16px}
.nav-group12{padding:9px 0 8px}.nav-caption12{display:block;color:var(--sub12);letter-spacing:.15em;font-size:9px;font-weight:750;padding:10px 13px}
.workspace12 .sidebar nav button{width:100%;justify-content:flex-start;gap:12px;border-radius:11px;min-height:42px;padding:10px 13px;color:var(--sub12);font-size:12px;white-space:nowrap;border:1px solid transparent;background:transparent;position:relative}
.workspace12 .sidebar nav button.active{background:var(--accent-soft12);color:var(--accent12);border-color:#15948416;font-weight:750}
.workspace12 .sidebar nav button.active:before{content:"";width:3px;height:20px;background:var(--accent12);border-radius:2px;position:absolute;left:0}
.workspace12 .sidebar nav button:hover{background:var(--soft12);box-shadow:none}.workspace12 .sidebar nav button:hover svg{transform:rotate(-6deg)}
.workspace12 .sidebar nav svg{width:19px;height:19px;flex-shrink:0;transition:transform .2s}.workspace12 .sidebar nav b{margin-left:auto;background:#e5753c;color:#fff;font-size:10px;min-width:19px;border-radius:7px;line-height:19px;text-align:center}.workspace12 .sidebar nav b:empty{display:none}
.sidebar-toggle12{position:absolute;right:12px;top:75px;min-height:25px!important;width:27px;border:1px solid var(--line12);background:var(--panel12);padding:3px!important;color:var(--sub12)}
.sidebar-toggle12 svg{width:15px;transform:rotate(180deg)}.sidebar-collapsed12 .sidebar-toggle12 svg{transform:none}
.workspace12 .sidebar-bottom{font-size:10px;color:var(--sub12);padding:14px 10px;border-top:1px solid var(--line12)}.workspace12 .sidebar-bottom small{margin-top:8px}
.workspace12 #app{grid-template-columns:238px minmax(0,1fr)}
.workspace12.sidebar-collapsed12 #app{grid-template-columns:84px minmax(0,1fr)}.sidebar-collapsed12 .sidebar{width:84px;padding:24px 10px}.sidebar-collapsed12 .sidebar .wordmark{padding:0 10px 45px;font-size:0;gap:0}.sidebar-collapsed12 .sidebar .wordmark>div,.sidebar-collapsed12 .sidebar .wordmark small{display:none}.sidebar-collapsed12 .sidebar .brand-mark{font-size:22px}.sidebar-collapsed12 .sidebar nav button{justify-content:center;padding:10px}.sidebar-collapsed12 .sidebar nav button>span{display:none}.sidebar-collapsed12 .nav-caption12{font-size:0;height:8px;padding:0}.sidebar-collapsed12 .sidebar-bottom{font-size:0;padding:12px 0;text-align:center}.sidebar-collapsed12 .sidebar-bottom small{font-size:0}.sidebar-collapsed12 #logout{font-size:10px}.sidebar-collapsed12 .sidebar nav b{position:absolute;right:0;top:0;margin:0}.sidebar-collapsed12 .sidebar-toggle12{right:25px}
.icon12{height:21px;width:21px;flex-shrink:0;vertical-align:middle}.workspace12 .ui-icon{height:21px;width:21px}
.intro12{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:6px 0 24px}.intro12 h2{margin:8px 0 10px}.intro12 p{margin:0;color:var(--sub12);max-width:650px}.intro-actions12{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}
.summary12{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 24px}.summary12 article{display:flex;align-items:center;gap:16px;background:var(--panel12);padding:20px;border:1px solid var(--line12);border-radius:16px}.summary12 article>svg{box-sizing:content-box;padding:12px;border-radius:13px;background:var(--accent-soft12);color:var(--accent12);height:23px;width:23px}.summary12 article span{font-size:12px;color:var(--sub12);display:block}.summary12 article strong{display:block;font-size:26px;line-height:1.3;margin-top:2px}
.workspace12 table{font-size:13px;min-width:640px}.workspace12 th{font-size:10px;letter-spacing:.06em;background:var(--soft12);color:var(--sub12);padding:14px 16px}.workspace12 td{padding:18px 16px;border-color:var(--line12);color:var(--ink12);vertical-align:middle}.workspace12 td small{margin-top:5px;display:block}.workspace12 tbody tr:last-child td{border-bottom:0}.workspace12 .table-wrap{border-radius:12px;overflow:auto}
.workspace12 .chip{border-radius:7px;font-size:10px;padding:4px 9px;white-space:nowrap}.workspace12 .mono{font-family:Consolas,monospace}
.state12{display:inline-flex;align-items:center;gap:7px;color:var(--sub12);background:var(--soft12);border:1px solid var(--line12);font-size:10px;padding:5px 9px;border-radius:8px;white-space:nowrap;font-weight:650}.state12>i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#97a8b4}.state12.is-live{color:var(--accent12);background:var(--accent-soft12);border-color:#17a28122}.state12.is-live>i{background:#16ba87;animation:statusPulse12 2.4s infinite}
.workspace12 .plans12{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.workspace12 .plan12{padding:26px;border-radius:21px;border:1px solid var(--line12);background:linear-gradient(155deg,var(--accent-soft12),var(--panel12) 48%);box-shadow:var(--shadow12);display:flex;flex-direction:column;position:relative;overflow:hidden}.plan12.tone12-1{background:linear-gradient(155deg,#eef0ff,var(--panel12) 48%)}.plan12.tone12-2{background:linear-gradient(155deg,#fff4da,var(--panel12) 48%)}.plan12 h3{margin:12px 0 0}.plan12 .eyebrow{margin:23px 0 0}.plan-icon12{display:grid;place-items:center;color:#087f83;background:var(--panel12);height:52px;width:52px;border:1px solid var(--line12);border-radius:16px}.plan-icon12 svg{width:28px;height:28px;animation:wifiMotion12 4s ease-in-out infinite}.workspace12 .plan-price{font-size:38px;color:var(--ink12);font-weight:750;letter-spacing:-.04em;margin:20px 0}.plan-price small{font-size:11px;font-weight:500;display:block;letter-spacing:0;margin-top:1px}.workspace12 .plan12 ul{padding:0;list-style:none;margin:0 0 26px;flex:1}.workspace12 .plan12 li{padding:12px 0;border-color:var(--line12);font-size:12px;display:flex;align-items:center;gap:12px;color:var(--sub12)}.plan12 li svg{height:18px;width:18px;color:var(--accent12)}.text-button12{border:0!important;background:transparent!important;color:var(--accent12);box-shadow:none!important;min-height:30px!important;padding:5px 8px!important}.plan12>.text-button12{margin-top:12px;font-size:10px}
.workspace12 .session-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.workspace12 .session12{background:var(--panel12);padding:22px;border:1px solid var(--line12);border-radius:18px;border-top:3px solid #a9bbc7;min-width:0;box-shadow:var(--shadow12)}.workspace12 .session12[data-online=true]{border-top-color:#14b691;background:linear-gradient(145deg,#eafaf544,var(--panel12) 45%)}.workspace12 .session-card-head{display:flex;gap:9px;align-items:center}.session-card-head>.state12{margin-left:auto}.session-card-head>button{font-size:18px;padding:0;width:28px;min-height:28px;border:1px solid var(--line12);background:var(--soft12)}.session12 h3{margin:19px 0 6px;font-size:18px;overflow-wrap:anywhere}.identity-caption12{font-size:11px;color:var(--sub12);margin:0 0 12px}.identity-caption12>span{display:block;font-size:10px;margin-top:3px;color:var(--accent12)}.device-mark12{position:relative;display:inline-grid;place-items:center;border-radius:16px;border:1px solid var(--line12);background:var(--soft12);color:var(--sub12);width:50px;height:54px;flex-shrink:0}.device-mark12>.icon12{width:27px;height:27px}.device-mark12.is-live{color:var(--accent12);background:var(--accent-soft12)}.device-mark12.is-live>.icon12{animation:deviceMotion12 4s ease-in-out infinite}.brand-mark12{position:absolute;bottom:-5px;right:-7px;background:var(--panel12);border:1px solid var(--line12);border-radius:5px;padding:0 4px;color:var(--ink12);font-weight:750;font-size:8px;line-height:16px;max-width:42px;overflow:hidden}.device-address12{border:1px solid var(--line12);border-radius:10px;padding:6px 8px;background:var(--soft12);display:grid;gap:1px}.device-address12 button{justify-content:space-between;background:transparent;border:0;font:11px Consolas,monospace;padding:3px 2px;min-height:27px;color:var(--sub12)}.device-address12 svg{height:13px;width:13px}.access12{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0;font-size:11px;color:var(--sub12)}.access12 strong{color:var(--ink12);font-size:17px}.usage-meter12{margin:12px 0}.usage-meter12>div{display:flex;justify-content:space-between;gap:10px;font-size:10px;margin-bottom:6px;color:var(--sub12)}.usage-meter12 strong{font-weight:600;color:var(--ink12);text-align:right}.usage-meter12 progress{width:100%;height:5px;display:block;border:0;border-radius:10px;appearance:none;background:var(--line12)}.usage-meter12 progress::-webkit-progress-bar{background:var(--line12);border-radius:10px}.usage-meter12 progress::-webkit-progress-value{background:#21ac99;border-radius:10px}.usage-meter12 progress::-moz-progress-bar{background:#21ac99;border-radius:10px}.workspace12 .quota-meter12 progress{accent-color:#d99b35}.workspace12 .quota-meter12 progress::-webkit-progress-value{background:#d99b35}.workspace12 .quota-meter12 progress::-moz-progress-bar{background:#d99b35}.workspace12 .monthly-usage-meter12{margin-bottom:10px}.workspace12 .session12 dl,.workspace12 .trusted-card12 dl,.receipt12 dl{margin:18px 0;font-size:11px}.workspace12 .session12 dl>div,.trusted-card12 dl>div,.receipt12 dl>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.workspace12 dd{margin:0;text-align:right;overflow-wrap:anywhere;color:var(--ink12)}.workspace12 dt{color:var(--sub12);flex-shrink:0}.session-actions12{border-top:1px solid var(--line12);padding-top:16px;margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}.session-actions12 button{font-size:11px;padding:7px 10px}.session-actions12 svg{width:15px;height:15px}.workspace12 .session-tools{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin-bottom:25px}.session-tools>input{flex:1;min-width:160px!important}.session-tools select{width:auto;min-width:150px}.workspace12 .pagination{font-size:11px;margin-top:24px;border-top:1px solid var(--line12);padding-top:20px;gap:16px;flex-wrap:wrap}.pagination button{font-size:11px}
.filterbar12{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:22px}.filterbar12>input,.filterbar12>label:first-child{flex:1;min-width:180px}.filterbar12 select{width:auto;min-width:160px}.person12{display:flex;align-items:center;gap:12px}.initial12{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--accent-soft12);color:var(--accent12);font-weight:750}.method12{display:inline-flex;align-items:center;gap:7px;font-size:12px}.method12 svg{height:17px;width:17px;color:var(--accent12)}.pending12{position:relative;display:inline-flex;gap:7px;align-items:center}.pending12:before{content:"";width:6px;height:6px;border-radius:50%;background:#e5a83a;animation:pendingPulse12 2s infinite}.receipt-amount12{font-size:17px;display:inline-block;margin-right:8px}.receipt12{max-width:560px;margin:auto;border:1px solid var(--line12);border-radius:16px;overflow:hidden;padding:24px;background:var(--panel12)}.receipt-brand12{display:flex;gap:14px;align-items:center}.receipt-brand12>svg{color:var(--accent12);height:35px;width:35px}.receipt-brand12 h2{font-size:22px;margin:5px 0}.receipt-brand12>.chip{margin-left:auto}.receipt-total12{display:flex;align-items:center;justify-content:space-between;background:var(--soft12);border-radius:12px;padding:20px;margin:22px 0}.receipt-total12 strong{font-size:30px}.receipt12 dl>div{border-bottom:1px dashed var(--line12);padding:11px 0}.receipt12 dd{max-width:65%;font-size:12px}
.trusted-grid12{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.trusted-card12 h3{margin:24px 0 7px}.trusted-card12 .mono{font-size:12px;color:var(--sub12)}.workspace12 #action-form .device-mark12{float:left;margin-right:18px}.workspace12 #action-form .callout{border-radius:12px;background:var(--soft12);border-color:var(--line12);color:var(--sub12);font-size:12px}.workspace12 #action-form .callout p{margin:0}.workspace12 #modal{background:var(--panel12);color:var(--ink12);border:1px solid var(--line12);border-radius:22px;padding:26px;max-width:680px;width:calc(100% - 32px)}.workspace12 #modal h2{font-size:22px}.workspace12 #modal::backdrop{background:#0c213c78;backdrop-filter:blur(5px)}.workspace12 .form-grid{gap:16px}
.workspace12 .qr-layout12{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(300px,1fr);align-items:start;gap:40px;max-width:1050px;margin:0 auto}.qr-buttons12{display:grid;gap:12px;margin-top:30px}.qr-poster12{border:1px solid var(--line12);border-radius:25px;padding:35px;max-width:450px;width:100%;background:#fff;color:#12334b;text-align:center;box-shadow:0 20px 60px #15354b12;justify-self:center}.qr-poster12 h2,.qr-poster12 h3{color:#12334b}.qr-brand12{display:flex;justify-content:center;gap:10px;align-items:center;font-weight:750;font-size:19px;border-bottom:1px solid #e5edf2;padding-bottom:22px;margin-bottom:24px}.qr-brand12 svg{color:#087f83;width:29px;height:29px;animation:wifiMotion12 4s infinite}.qr-poster12 #wifi-qr{margin:24px auto;width:230px;max-width:100%;background:white;padding:8px}.qr-poster12 #wifi-qr svg{width:100%;height:auto;display:block}.qr-poster12 p{font-size:12px;line-height:1.9;color:#526b7c}.qr-poster12 small{font-size:9px;color:#526b7c}.qr-poster12 h3{overflow-wrap:anywhere}.qr-unavailable12{padding:40px;text-align:center;background:var(--panel12);border-radius:20px;border:1px dashed var(--line12)}.qr-unavailable12>svg{width:50px;height:50px;color:var(--sub12)}
.workspace12 .report-toolbar{padding:16px;background:var(--soft12);border-radius:14px;gap:14px;margin-bottom:26px;align-items:end;flex-wrap:wrap}.report-toolbar label{min-width:120px;flex:1}.workspace12 .report12 .metrics{gap:18px}.workspace12 .stat-tile{border-radius:17px;padding:24px;overflow:hidden;box-shadow:var(--shadow12)}.workspace12 .stat-tile strong{font-size:29px}.workspace12 .stat-tile>svg,.workspace12 .stat-tile .stat-icon svg{opacity:.25}.report12 h3{margin:28px 0 20px}.report12 .traffic-chart{height:250px;width:100%;background:var(--soft12);border-radius:16px;padding:18px}.report12 circle{cursor:pointer;transition:r .2s}.report12 circle:focus,.report12 circle:hover{r:7;outline:none;stroke:#087f83;stroke-width:3}.chart-caption12{font-size:12px;background:var(--accent-soft12);color:var(--accent12);padding:12px 16px;border-radius:10px}
.workspace12 .chat12{padding:0;display:grid;grid-template-columns:290px minmax(0,1fr);height:650px;overflow:hidden;min-height:400px}.chat12 aside{background:var(--soft12);border-right:1px solid var(--line12);padding:18px;display:flex;flex-direction:column;gap:12px;overflow:hidden}.chat-list-heading12{display:flex;justify-content:space-between;align-items:center}.chat-list-heading12 h3{margin:0}.chat-list-heading12>span{background:var(--panel12);border-radius:6px;padding:1px 7px;color:var(--sub12);font-size:11px}.chat12 #chat-search,.chat12 #chat-filter12{width:100%;font-size:11px}.chat12 #chat-list{overflow:auto;min-height:0;flex:1}.workspace12 .conversation{width:100%;display:flex;justify-content:start;align-items:start;text-align:left;padding:15px 10px;gap:12px;border:1px solid transparent;border-bottom:1px solid var(--line12);border-radius:12px;background:transparent;font-weight:400;min-height:100px}.workspace12 .conversation.selected{background:var(--panel12);border-color:var(--line12);box-shadow:var(--shadow12)}.conversation>div{min-width:0;flex:1}.conversation strong{font-size:11px;display:flex;align-items:center;justify-content:space-between;overflow-wrap:anywhere;gap:5px}.conversation span,.conversation small{font-size:10px;display:block;color:var(--sub12)}.conversation small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;margin-top:7px}.conversation .conversation-support-state{font-size:9px;margin-top:5px;color:var(--accent12)}.chat-avatar12{position:relative;display:grid!important;place-items:center;width:37px;height:40px;border-radius:12px;background:var(--panel12);border:1px solid var(--line12);color:var(--sub12);flex-shrink:0}.chat-avatar12 svg{height:20px;width:20px}.chat-avatar12.is-live:after{content:"";width:8px;height:8px;border-radius:50%;background:#16ba87;position:absolute;right:-2px;bottom:0;border:2px solid var(--panel12);animation:statusPulse12 2.4s infinite}.unread12{background:#087f83;color:white;padding:0 5px;border-radius:6px;font-size:9px;line-height:16px}.chat12 #chat-thread{min-width:0;padding:0;display:flex;flex-direction:column;overflow:hidden;background:var(--panel12)}.chat12 #chat-thread>.empty-state{margin:auto}.chat-header12{display:flex;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line12);gap:12px}.chat-header12 h3{font-size:14px;margin:0 0 4px}.chat-header12 small{font-size:10px}.chat-header12>.state12{margin-left:auto}.chat12 .chat-messages{flex:1;min-height:100px;max-height:none;padding:24px;background:linear-gradient(150deg,var(--soft12),var(--panel12));overflow:auto}.workspace12 .chat-bubble{max-width:80%;padding:12px 16px;border-radius:16px 16px 16px 4px;border:1px solid var(--line12);background:var(--panel12);font-size:13px;margin:0 0 15px;box-shadow:0 3px 8px #12334b05}.workspace12 .chat-bubble.owner{margin-left:auto;border-radius:16px 16px 4px 16px;background:var(--accent-soft12);border-color:#1f9b7c20;color:var(--ink12)}.chat-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble small{font-size:9px;display:flex;gap:10px;justify-content:space-between;margin-top:8px}.chat12 #owner-chat-form{display:flex;gap:12px;align-items:center;padding:16px 22px;border-top:1px solid var(--line12);background:var(--panel12);position:relative}.chat12 #owner-chat-form label{flex:1;margin:0}.chat12 #owner-chat-form textarea{width:100%;resize:none;min-height:60px;max-height:150px;font-size:13px}.chat12 #owner-chat-form .error{position:absolute;bottom:0;left:22px;font-size:10px;margin:0}.chat12 #owner-chat-form button{font-size:12px;white-space:nowrap}.support-banner12{background:var(--accent-soft12);color:var(--accent12);padding:9px 24px;font-size:10px;margin:0}.workspace12 .chat-back12{display:none}.chat12 .sr-only{position:static;width:auto;height:auto;clip:auto;overflow:visible;font-size:0}
.workspace12 .customizer-layout{grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:26px;align-items:start}.workspace12 .theme-choices{gap:18px;margin-bottom:26px}.workspace12 .theme-choice{border-radius:16px;padding:12px;display:block;text-align:left;border-color:var(--line12);background:var(--panel12)}.theme-choice>span{border-radius:10px;height:50px!important;margin-bottom:12px}.theme-choice strong{font-size:14px}.theme-choice small{display:block;font-size:10px}.workspace12 .theme-choice.selected{border:2px solid #18aa8d;box-shadow:0 0 0 3px #18aa8d0d}.theme-heading12 .state12{margin-left:10px;font-size:10px}.workspace12 #theme-form{padding:24px}.workspace12 #theme-form h3{margin:0 0 20px}.workspace12 #theme-form label{margin-bottom:18px}.workspace12 #theme-form hr{border:0;border-top:1px solid var(--line12);margin:25px 0}.workspace12 .theme-section{border:1px solid var(--line12);background:var(--panel12);border-radius:10px;padding:10px;gap:7px;margin-bottom:9px}.workspace12 .theme-section strong{font-size:11px;flex:1}.workspace12 .theme-section button{min-height:25px;padding:3px;background:var(--soft12);color:var(--sub12);width:24px}.workspace12 .theme-section input{width:16px;min-height:16px}.preview-panel12{position:sticky;top:20px;min-width:0;background:var(--soft12);border:1px solid var(--line12);border-radius:20px;padding:20px;overflow:hidden}.preview-toolbar12{display:flex;align-items:center;justify-content:space-between;gap:10px}.preview-toolbar12 strong{font-size:12px}.preview-toolbar12>div{display:flex;gap:4px}.preview-toolbar12 button{font-size:10px;padding:6px 8px;min-height:30px;background:var(--panel12);color:var(--sub12);border:1px solid var(--line12)}.preview-toolbar12 button[aria-pressed=true]{background:var(--accent-soft12);color:var(--accent12);border-color:var(--accent12)}.preview-panel12>p{font-size:10px;margin:15px 0}.preview-viewport12{height:680px;margin:20px auto 10px;border:7px solid #1b3047;border-radius:30px;background:white;box-shadow:0 16px 40px #15354b18;overflow:hidden;width:100%;max-width:390px}.preview-viewport12 iframe{border:0;width:100%;height:100%;display:block;background:#fff}.preview-viewport12.desktop{max-width:none;border-radius:14px;height:580px;border-width:5px}.preview-viewport12.desktop iframe{width:100%;min-width:0}
.workspace12 .settings-panel,.workspace12 .settings-grid>.card{border-radius:20px;padding:25px;box-shadow:var(--shadow12)}.workspace12 .settings-layout,.workspace12 .settings-grid{gap:22px}.workspace12 .settings-panel h3>.ui-icon,.workspace12 .settings-panel h3>svg{color:var(--accent12);animation:deviceMotion12 5s ease-in-out infinite}.workspace12 .settings-panel h3{font-size:17px}.workspace12 .settings-panel input,.workspace12 .settings-panel select{min-height:40px}.workspace12 .command-status{font-size:11px;border-top:1px solid var(--line12);margin-top:22px}.workspace12 .command-status>div{padding:10px 0;gap:14px}.workspace12 .wifi-policy-note,.workspace12 .wifi-rules{font-size:11px;background:var(--soft12);padding:12px;border-radius:10px}.workspace12 .settings-intro h2{font-size:26px}.workspace12 .router-card{border:1px solid var(--line12);border-radius:18px;background:var(--panel12);padding:24px}.workspace12 .router-card .card-head>svg{background:var(--accent-soft12);color:var(--accent12);box-sizing:content-box;padding:11px;border-radius:12px}.workspace12 .router-grid{gap:20px}.workspace12 .reset-card{max-width:580px;margin:auto}.workspace12 .reset-symbol{display:inline-grid;place-items:center;background:var(--accent-soft12);color:var(--accent12);width:64px;height:64px;border-radius:20px;font-size:35px}.workspace12 .monitor-grid{gap:20px}.workspace12 .service-light.live{animation:statusPulse12 2.4s infinite}.workspace12 .system11 .card,.workspace12 .security11 .card{border-radius:20px}.workspace12 details{border:1px solid var(--line12);border-radius:12px;padding:15px;margin-bottom:14px}.workspace12 summary{font-weight:650;cursor:pointer;color:var(--ink12)}
html[data-appearance=night] .plan12.tone12-1,html[data-theme=night] .plan12.tone12-1{background:linear-gradient(155deg,#30345e,var(--panel12) 48%)}html[data-appearance=night] .plan12.tone12-2,html[data-theme=night] .plan12.tone12-2{background:linear-gradient(155deg,#493d27,var(--panel12) 48%)}
@keyframes statusPulse12{0%,100%{box-shadow:0 0 0 0 #16ba872c}50%{box-shadow:0 0 0 4px #16ba8700}}@keyframes pendingPulse12{0%,100%{opacity:1}50%{opacity:.4}}@keyframes wifiMotion12{0%,100%{opacity:1;transform:translateY(0)}50%{opacity:.65;transform:translateY(-2px)}}@keyframes deviceMotion12{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
#qr-print-area12{display:none}
.workspace12 .workspace{margin-left:238px}.workspace12.sidebar-collapsed12 .workspace{margin-left:84px}.workspace12 .sidebar .wordmark{margin-bottom:20px}.workspace12 .sidebar nav{flex:1;min-height:0}.workspace12 .sidebar nav button>span{font-size:12px;width:auto;text-align:left}.workspace12 .chat12 #chat-thread>.empty{margin:auto}
.workspace12 .sidebar{position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;align-items:stretch;overflow:hidden;height:100dvh;z-index:40}.workspace12 .sidebar nav{display:block;overflow-x:hidden}.workspace12 .sidebar .wordmark{display:flex;flex-shrink:0}.workspace12 .sidebar-bottom{position:static;margin-top:auto;flex-shrink:0}.workspace12 .sidebar-bottom .status-dot{display:inline-block}
.workspace12 .session12 dl dt,.workspace12 .session12 dl dd{font-family:inherit;font-size:11px;line-height:1.6}.workspace12 .session12 dl>div:last-child dd{color:var(--ink12)}.workspace12 .session12 .usage-meter12>div{font-size:11px}.workspace12 .conversation small{font-size:11px;line-height:1.6}.workspace12 .chat-bubble small{font-size:10px}.workspace12 .brand-mark12{animation:inherit}.device-mark12.is-live .brand-mark12{animation:brandPulse12 3s ease-in-out infinite}@keyframes brandPulse12{50%{border-color:#18aa8d;box-shadow:0 0 0 2px #18aa8d10}}
.workspace12 .workspace-utilities button,.workspace12 #refresh{background:var(--panel12);color:var(--sub12);border:1px solid var(--line12)}
@media(min-width:1500px){.workspace12 .workspace{padding-left:42px;padding-right:42px}.workspace12 .session-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1250px){.workspace12 .session-grid,.trusted-grid12{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace12 .plans12{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace12 .workspace{padding:0 24px 20px}.workspace12 .intro12 h2{font-size:25px}.intro12{align-items:start}.intro-actions12{flex-shrink:1}.chat12 .chat-header12{padding:18px}.workspace12 .chat12{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:1000px){.workspace12 #app{grid-template-columns:84px minmax(0,1fr)}.workspace12 .sidebar{width:84px;padding:24px 10px}.workspace12 .sidebar .wordmark{font-size:0;padding:0 10px 28px;gap:0}.workspace12 .sidebar .wordmark>div,.workspace12 .sidebar .wordmark small{display:none}.workspace12 .sidebar .brand-mark{font-size:22px}.workspace12 .sidebar nav button{justify-content:center;padding:10px}.workspace12 .sidebar nav button>span{display:none}.workspace12 .nav-caption12{font-size:0;height:8px;padding:0}.workspace12 .sidebar nav b{position:absolute;right:0;top:0}.workspace12 .sidebar-bottom{font-size:0;padding:12px 0}.workspace12 .sidebar-bottom small{font-size:0}.workspace12 #logout{font-size:10px}.workspace12 .sidebar-toggle12{display:none}.workspace12 .customizer-layout{grid-template-columns:minmax(240px,1fr) minmax(0,1fr)}.workspace12 .header-actions{gap:7px}.workspace12 .sync-text{display:none}.workspace12 .intro12{display:block}.intro-actions12{margin-top:16px}.workspace12 .summary12 article{padding:14px;gap:10px}.summary12 article>svg{padding:9px;width:19px;height:19px}.summary12 article strong{font-size:24px}.summary12 article span{font-size:10px}.workspace12 .chat12{grid-template-columns:235px minmax(0,1fr)}.chat-header12>.state12{font-size:0;padding:7px}.chat-header12>.state12 i{margin:0}.chat12 #owner-chat-form{padding:14px;gap:8px}.chat12 #owner-chat-form button{font-size:11px;padding:8px}.chat12 #owner-chat-form button svg{display:none}}
@media(max-width:760px){.workspace12 #app,.workspace12.sidebar-collapsed12 #app{display:block}.workspace12 .sidebar,.workspace12.sidebar-collapsed12 .sidebar{width:260px;padding:24px 16px;z-index:100;transform:translateX(-105%);position:fixed;top:0;bottom:0;height:100dvh;background:var(--panel12);box-shadow:10px 0 70px #0003}.workspace12.mobile-menu-open .sidebar{transform:translateX(0)}.workspace12 .sidebar .wordmark,.workspace12.sidebar-collapsed12 .sidebar .wordmark{font-size:21px;gap:12px;padding:0 10px 20px}.workspace12 .sidebar .wordmark>div,.workspace12 .sidebar .wordmark small{display:block}.workspace12 .sidebar nav button{justify-content:flex-start;padding:11px 13px;font-size:12px}.workspace12 .sidebar nav button>span{display:block}.workspace12 .nav-caption12{font-size:9px;height:auto;padding:10px 13px}.workspace12 .sidebar nav b{position:static;margin-left:auto}.workspace12 .sidebar-bottom,.workspace12 .sidebar-bottom small{font-size:10px}.workspace12 .workspace{padding:0 18px 85px}.workspace12 .topbar{padding:22px 0 18px;margin-bottom:22px;align-items:center;gap:8px}.workspace12 h1{font-size:23px}.workspace12 .topbar .eyebrow{font-size:8px}.workspace12 .header-actions .avatar{display:none}.workspace12 .workspace-utilities button>span{display:none}.workspace12 .header-actions #refresh{display:none}.workspace12 .header-actions button{width:34px;min-height:34px;padding:5px}.workspace12 .header-actions select{font-size:10px;padding:7px 5px;min-height:34px}.workspace12 .header-actions .ui-icon{width:17px;height:17px}.workspace12 .header-actions{gap:5px}.workspace12 .workspace-utilities{gap:5px}.workspace12 .summary12{gap:9px;margin-bottom:18px}.workspace12 .summary12 article{display:block;padding:12px}.summary12 article>svg{width:17px;height:17px;padding:7px;margin-bottom:7px}.summary12 article strong{font-size:23px}.summary12 article span{font-size:9px}.workspace12 .intro12 h2{font-size:24px}.intro12 p{font-size:12px}.intro12 .eyebrow{font-size:9px}.workspace12 .card{padding:18px;border-radius:17px}.workspace12 .session-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workspace12 .session12{padding:17px}.session12 .session-card-head{flex-wrap:wrap}.session12 .session-card-head>.state12{font-size:9px;padding:4px 6px}.workspace12 .plans12{gap:16px}.workspace12 .plan12{padding:21px}.workspace12 .plan-price{font-size:34px}.workspace12 .qr-layout12{grid-template-columns:1fr;gap:24px}.qr-poster12{max-width:390px;padding:24px}.workspace12 .customizer-layout{grid-template-columns:1fr}.preview-panel12{position:static}.workspace12 .theme-choices{gap:9px}.workspace12 .theme-choice{padding:8px}.theme-choice strong{font-size:12px}.theme-choice small{font-size:9px}.theme-choice>span{height:36px!important}.workspace12 .theme-section strong{font-size:12px}.workspace12 .chat12{display:block;height:660px;min-height:400px;padding:0}.chat12 aside{height:100%;border:0}.chat12 #chat-thread{display:none;height:100%}.chat12.has-thread12 aside{display:none}.chat12.has-thread12 #chat-thread{display:flex}.workspace12 .chat-back12{display:inline-flex;border:0;background:var(--soft12);width:30px;min-height:30px;padding:0}.conversation small{max-width:100%}.conversation strong{font-size:12px}.chat12 .chat-header12{padding:16px}.chat12 .chat-messages{padding:16px}.workspace12 .chat-bubble{max-width:90%}.chat-header12>.state12{font-size:9px}.workspace12 .responsive12 table,.workspace12 .responsive12 tbody,.workspace12 .responsive12 tr{display:block;min-width:0;width:100%}.workspace12 .responsive12 thead{display:none}.workspace12 .responsive12 tr{border:1px solid var(--line12);border-radius:14px;padding:12px;margin-bottom:14px;background:var(--panel12)}.workspace12 .responsive12 td{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;width:100%;padding:10px 4px;border:0;text-align:right;font-size:12px}.workspace12 .responsive12 td:before{content:attr(data-label);font-size:10px;color:var(--sub12);text-align:left;margin-right:auto}.workspace12 .responsive12 td>small{flex-basis:100%;margin:0;padding-left:25%;font-size:10px}.workspace12 .responsive12 td .person12{justify-content:end}.workspace12 .responsive12 td .person12 small{text-align:left}.workspace12 .responsive12 td .initial12{width:30px;height:30px}.workspace12 .responsive12 td>strong{max-width:70%}.workspace12 .responsive12 td .method12{font-size:11px}.workspace12 .filterbar12{gap:12px}.workspace12 .filterbar12>label{flex:1;min-width:110px}.workspace12 .receipt12{padding:18px}.receipt-brand12{flex-wrap:wrap}.workspace12 footer{font-size:10px}.workspace12 footer span{font-size:9px}.workspace12 .mobile-nav{z-index:110;border-color:var(--line12);background:var(--panel12);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -5px 20px #15354b06}.workspace12 .mobile-nav button{font-size:10px;border-radius:12px;color:var(--sub12)}.workspace12 .mobile-nav button.active{background:var(--accent-soft12);color:var(--accent12)}.workspace12 .settings-panel,.workspace12 .settings-grid>.card{padding:20px}.workspace12 .report12 .traffic-chart{height:210px;padding:8px}.workspace12 .report-toolbar label{min-width:100px}.workspace12 .report-toolbar{padding:12px}}
@media(max-width:530px){.workspace12 .session-grid,.trusted-grid12,.workspace12 .plans12{grid-template-columns:1fr}.workspace12 .session-card-head{flex-wrap:nowrap}.workspace12 .session12{padding:23px}.workspace12 .session-tools{gap:12px}.session-tools label,.session-tools>input,.session-tools>select{width:100%;flex-basis:100%}.session-tools select{width:100%}.workspace12 .plan12{padding:27px}.workspace12 .intro-actions12>button{width:100%}.workspace12 .intro-actions12{display:grid}.workspace12 .filterbar12>input{flex-basis:100%}.workspace12 .filterbar12 select{flex:1}.workspace12 .summary12 article{padding:10px}.summary12 article strong{font-size:21px}.summary12 article span{font-size:8px}.preview-panel12{padding:13px}.preview-toolbar12{flex-wrap:wrap}.preview-viewport12{height:620px;border-width:5px}.workspace12 .theme-heading12{display:block}.theme-heading12>div{display:flex;gap:7px;margin-top:12px}.theme-heading12 button{font-size:11px;padding:8px}.workspace12 .topbar h1{font-size:21px}.workspace12 .topbar .eyebrow{font-size:7px;letter-spacing:.12em}.workspace12 .header-actions{gap:3px}.workspace12 .workspace-utilities{gap:3px}.workspace12 .topbar .header-actions button{width:29px;min-height:31px}.workspace12 .topbar #appearance{width:57px}.workspace12 .stat-tile strong{font-size:25px}.workspace12 .stat-tile{padding:20px}.chat12 #owner-chat-form{flex-wrap:wrap}.chat12 #owner-chat-form label{flex-basis:100%}.chat12 #owner-chat-form button{margin-left:auto}.workspace12 #modal{padding:20px}.qr-poster12 h2{font-size:24px}.qr-brand12{font-size:16px}.qr-poster12 #wifi-qr{width:220px}.workspace12 .pagination>div{width:100%;justify-content:space-between}.workspace12 .command-status>div{flex-wrap:wrap}.workspace12 .form-actions{flex-wrap:wrap}.receipt-total12 strong{font-size:26px}}
@media(prefers-reduced-motion:reduce){.workspace12 *,.workspace12 *:before,.workspace12 *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:1000px) and (min-width:761px){.workspace12 .workspace{margin-left:84px}.workspace12 .sidebar nav button>span{display:none}}
@media(max-width:760px){.workspace12 .workspace,.workspace12.sidebar-collapsed12 .workspace{margin-left:0}.workspace12 .sidebar{inset:0 auto 0 0;display:flex!important;z-index:120}.workspace12 .sidebar nav,.workspace12.mobile-menu-open .sidebar nav{display:block;position:static;border:0;border-radius:0;padding:0;background:transparent;inset:auto}.workspace12 .sidebar nav button>span{font-size:12px}.workspace12 .mobile-nav{display:flex}.workspace12 .sidebar .sidebar-bottom{display:block}.workspace12 .sidebar{width:260px!important}.workspace12 .sidebar nav{overflow:auto}}
@media(max-width:760px){.workspace12 #content:has(.chat12.has-thread12)>.intro12{display:none}.workspace12 .chat12{height:calc(100dvh -220px);min-height:400px;max-height:700px}.workspace12 .chat12 #owner-chat-form{padding:12px 14px}.workspace12 .chat12 #owner-chat-form label{flex-basis:auto}.workspace12 .chat12 #owner-chat-form button{font-size:0;width:38px;height:38px;padding:9px}.workspace12 .chat12 #owner-chat-form button svg{display:block;width:20px;height:20px}.workspace12 .chat12 #owner-chat-form button:after{content:"Send reply";position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media print{body.print-qr12>*{display:none!important}body.print-qr12>#qr-print-area12{display:block!important}body.print-qr12 .qr-poster12{width:150mm;max-width:150mm;margin:20mm auto;border:1px solid #ccc;box-shadow:none;break-inside:avoid}body.print-qr12 .qr-poster12 #wifi-qr{width:70mm}body.print-qr12 *{animation:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
