/*! noobwrt21: LuCI theme for OpenWrt 21.02, Apache-2.0. See NOTICE. */
.toolbar-wrapper{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:999;display:flex;align-items:center;transition:transform 0.35s cubic-bezier(0.4,0,0.2,1)}.toolbar-wrapper.hidden{transform:translateY(-50%) translateX(calc(100% - 20px))}.toolbar-wrapper.peek{transform:translateY(-50%) translateX(0)}.toolbar-pull-tab{width:20px;min-width:20px;height:52px;background:rgba(255,255,255,0.95);border:1px solid rgba(0,0,0,0.85);border-right:none;border-radius:8px 0 0 8px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;overflow:visible;transition:background 0.2s ease,width 0.2s ease;box-shadow:-2px 0 8px rgba(0,0,0,0.12);padding:0}.toolbar-pull-tab:hover{background:color-mix(in srgb,var(--primary) 15%,white)}body.dark-theme .toolbar-pull-tab{background:rgba(20,20,25,0.98);border-color:rgba(255,255,255,0.85);box-shadow:-2px 0 10px rgba(0,0,0,0.6)}body.dark-theme .toolbar-pull-tab:hover{background:color-mix(in srgb,var(--dark-primary) 25%,rgba(20,20,25,0.98))}.toolbar-pull-tab svg{width:12px;height:12px;stroke:var(--primary);flex-shrink:0;display:block;transition:transform 0.35s ease,stroke 0.2s ease}body.dark-theme .toolbar-pull-tab svg{stroke:var(--dark-primary)}.toolbar-wrapper.hidden .toolbar-pull-tab svg{transform:rotate(180deg)}.toolbar-container{display:flex;flex-direction:column;align-items:center;gap:4px;background:rgba(255,255,255,0.95);padding:8px;border-radius:12px 0 0 12px;border:1px solid rgba(0,0,0,0.85);border-right:none;box-shadow:-2px 0 12px rgba(0,0,0,0.1);transition:background 0.3s ease,box-shadow 0.3s ease}body.dark-theme .toolbar-container{background:rgba(20,20,25,0.98);border-color:rgba(255,255,255,0.85);box-shadow:-2px 0 16px rgba(0,0,0,0.7)}.toolbar-fab{display:none}.toolbar-menu{display:flex;flex-direction:column;gap:4px;align-items:center}.toolbar-item{width:40px;height:40px;border-radius:8px;background:transparent;border:none;outline:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;text-decoration:none;padding:0;overflow:hidden;position:relative}.toolbar-item img{width:24px;height:24px;object-fit:contain;filter:opacity(0.7);transition:filter 0.2s ease}body.dark-theme .toolbar-item img{filter:opacity(0.8) invert(1)}.toolbar-item:hover{background:color-mix(in srgb,var(--primary) 12%,transparent)}body.dark-theme .toolbar-item:hover{background:color-mix(in srgb,var(--dark-primary) 30%,transparent)}.toolbar-item:hover img{filter:opacity(1)}body.dark-theme .toolbar-item:hover img{filter:opacity(1) invert(1)}.toolbar-item:active{transform:scale(0.95)}.toolbar-item:hover::after{content:attr(title);position:absolute;right:46px;top:50%;transform:translateY(-50%);background:rgba(0,0,0,0.8);color:white;padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;pointer-events:none;z-index:1000}.theme-toggle{background:color-mix(in srgb,var(--primary) 15%,transparent);border-radius:8px;margin-bottom:4px;transition:background 0.3s ease}body.dark-theme .theme-toggle{background:color-mix(in srgb,var(--dark-primary) 35%,transparent)}.theme-toggle svg{width:20px;height:20px;stroke:var(--primary);transition:transform 0.3s ease,stroke 0.3s ease}body.dark-theme .theme-toggle svg{stroke:var(--dark-primary)}.theme-toggle:hover svg{transform:rotate(20deg)}@media (max-width:768px){.toolbar-container{padding:6px;gap:2px}.toolbar-item{width:36px;height:36px}.toolbar-item img{width:20px;height:20px}.toolbar-pull-tab{height:40px}}.noob-dash{--nd-box:#fff;--nd-card:#fff;--nd-border:#d5dae3;--nd-ink:#32325d;--nd-dim:#525f7f;--nd-green:#1d7a35;--nd-blue:#1d5bb8;--nd-red:#c3262f;--nd-green-border:#93c2a0;--nd-blue-border:#98b0da;--nd-dashed:#b9c0cc;--nd-track:#e6e8ef;--nd-ram:#cfc0f6;--nd-disk:#c2e3ec;--nd-pill-ink:#1f2433;--nd-ram-icon:#6b4fc8;--nd-disk-icon:#0b7489;--nd-load-icon:#4558d0;margin:0;padding:12px;border-radius:.25rem;background:var(--nd-box);box-shadow:0 0 1rem 0 rgba(136,152,170,.15);color:var(--nd-ink)}html[data-darkmode="true"] .noob-dash{--nd-box:#252526;--nd-card:#161618;--nd-border:#4a505c;--nd-ink:#e4e4e4;--nd-dim:#b4b8c0;--nd-green:#6fd98a;--nd-blue:#78acff;--nd-red:#ff8a8a;--nd-green-border:#4e7d5b;--nd-blue-border:#4f6894;--nd-dashed:#5d6470;--nd-track:#3a3f4b;--nd-ram:#5b4a9a;--nd-disk:#2c5b69;--nd-pill-ink:#f2f2f2;--nd-ram-icon:#ab98f5;--nd-disk-icon:#6fd0e4;--nd-load-icon:#a49cf0;box-shadow:0 0 .5rem 0 rgba(0,0,0,.35)}.noob-dash .nd-row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.noob-dash .nd-card{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;flex:1 1 128px;max-width:172px;min-width:0;min-height:126px;padding:10px 12px;border:1.5px solid var(--nd-border);border-radius:12px;background:var(--nd-card);box-shadow:0 2px 6px rgba(50,50,93,.06);text-align:center;line-height:1.25}.noob-dash .nd-sys,.noob-dash .nd-net,.noob-dash .nd-res{flex-basis:158px;max-width:200px}.noob-dash .nd-sys,.noob-dash .nd-res{align-items:stretch;text-align:left}.noob-dash .nd-num,.noob-dash .nd-val,.noob-dash .nd-ip,.noob-dash .nd-peak{font-family:ui-monospace,"SFMono-Regular","Cascadia Mono",Menlo,Consolas,"Liberation Mono",monospace}.noob-dash .nd-big{white-space:nowrap}.noob-dash .nd-num{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.noob-dash .nd-unit{font-size:.75rem;font-weight:600}.noob-dash .nd-label{margin-top:4px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--nd-ink)}.noob-dash .nd-cap{font-size:.62rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--nd-dim)}.noob-dash .nd-peak{font-size:.68rem;color:var(--nd-dim)}.noob-dash .nd-via{display:block;margin-top:1px;font-size:.6rem;font-weight:600;letter-spacing:.07em;color:var(--nd-dim)}.noob-dash .nd-spark{display:block;width:80%;height:30px;margin:0 auto 4px;overflow:visible}.noob-dash .nd-spark polyline{fill:none;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.noob-dash .nd-dl .nd-num,.noob-dash .nd-down .nd-num{color:var(--nd-green)}.noob-dash .nd-ul .nd-num,.noob-dash .nd-up .nd-num{color:var(--nd-blue)}.noob-dash .nd-dl polyline{stroke:var(--nd-green)}.noob-dash .nd-ul polyline{stroke:var(--nd-blue)}.noob-dash .nd-trend{display:inline-block;min-width:.9em;margin-left:3px;font-size:.7rem}.noob-dash .nd-trend-up{color:var(--nd-green)}.noob-dash .nd-trend-down{color:var(--nd-red)}.noob-dash .nd-line{display:flex;align-items:center;gap:10px;min-width:0}.noob-dash .nd-line-body{flex:1 1 auto;min-width:0}.noob-dash .nd-icon{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.noob-dash .nd-sys .nd-line:first-child .nd-icon{color:var(--nd-load-icon)}.noob-dash .nd-sys .nd-line:last-child .nd-icon{color:var(--nd-dim)}.noob-dash .nd-res .nd-line:first-child .nd-icon{color:var(--nd-ram-icon)}.noob-dash .nd-res .nd-line:last-child .nd-icon{color:var(--nd-disk-icon)}.noob-dash .nd-val{font-size:1.05rem;font-weight:700;color:var(--nd-ink)}.noob-dash .nd-rule{height:1px;margin:9px 0;background:var(--nd-border);align-self:stretch}.noob-dash .nd-net{border-style:dashed;border-color:var(--nd-dashed)}.noob-dash .nd-state{margin:2px 0 0;font-size:.95rem;font-weight:700;color:var(--nd-ink)}.noob-dash .nd-net.nd-on .nd-state{color:var(--nd-green)}.noob-dash .nd-net.nd-off .nd-state{color:var(--nd-red)}.noob-dash .nd-ip{margin-top:2px;font-size:.8rem;font-weight:700;overflow-wrap:anywhere}.noob-dash .nd-pill{position:relative;height:18px;margin-top:3px;border-radius:9px;overflow:hidden;background:var(--nd-track)}.noob-dash .nd-pill-fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:9px;background:var(--nd-ram);transition:width .4s ease}.noob-dash .nd-res .nd-line:last-child .nd-pill-fill{background:var(--nd-disk)}.noob-dash .nd-pill-text{position:relative;display:block;padding:0 6px;font-size:.62rem;font-weight:700;line-height:18px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--nd-pill-ink)}.noob-dash .nd-down{border-color:var(--nd-green-border)}.noob-dash .nd-up{border-color:var(--nd-blue-border)}.noob-dash .nd-total .nd-num{font-size:1.6rem}@media (max-width:768px){.noob-dash{padding:8px}.noob-dash .nd-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.noob-dash .nd-card{max-width:none;min-height:0;padding:10px 8px}.noob-dash .nd-dl{order:1}.noob-dash .nd-ul{order:2}.noob-dash .nd-net{order:3;grid-column:1 / -1}.noob-dash .nd-sys{order:4}.noob-dash .nd-res{order:5}.noob-dash .nd-down{order:6}.noob-dash .nd-up{order:7}.noob-dash .nd-sys,.noob-dash .nd-res{padding:10px}.noob-dash .nd-line{gap:7px}.noob-dash .nd-pill-text{padding:0 4px;font-size:.58rem}.noob-dash .nd-num{font-size:1.3rem}.noob-dash .nd-total .nd-num{font-size:1.35rem}}:root{--p21-bg:#f4f5f7;--p21-card:#fff;--p21-ink:#32325d;--p21-dim:#525f7f;--p21-rule:#dee2e6;--p21-hover:#f0f2fb;--p21-accent:var(--primary);--p21-accent2:#4b5fd6;--p21-on:#fff;--p21-head:#fff}html[data-darkmode="true"]{--p21-bg:#1e1e1e;--p21-card:#252526;--p21-ink:#cccccc;--p21-dim:#a8a8a8;--p21-rule:#3c3c3c;--p21-hover:#2d2d30;--p21-accent:#7c8ff5;--p21-accent2:#97a6f7;--p21-on:#111;--p21-head:#252526}@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:0s!important;transition-delay:0s!important;animation-duration:0s!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.login-page .main-bg{background:radial-gradient(ellipse at 22% 78%,rgba(255,255,255,.55) 0,rgba(255,255,255,0) 42%),radial-gradient(ellipse at 78% 30%,rgba(122,140,245,.55) 0,rgba(122,140,245,0) 55%),radial-gradient(ellipse at 95% 95%,rgba(244,143,177,.45) 0,rgba(244,143,177,0) 40%),linear-gradient(160deg,#3cb6cf 0%,#6fc9dc 38%,#a7dbe8 70%,#e9c9d6 100%)}html[data-darkmode="true"] .login-page .main-bg{background:radial-gradient(ellipse at 78% 30%,rgba(94,114,228,.35) 0,rgba(94,114,228,0) 55%),radial-gradient(ellipse at 15% 85%,rgba(60,182,207,.25) 0,rgba(60,182,207,0) 45%),linear-gradient(160deg,#0f1b2d 0%,#16233a 50%,#241a33 100%)}#view{overflow:visible}body.logged-in .main-right>#maincontent{padding-right:76px}body.logged-in.toolbar-hidden .main-right>#maincontent{padding-right:24px}@media (max-width:768px){body.logged-in .main-right>#maincontent{padding-right:64px}body.logged-in.toolbar-hidden .main-right>#maincontent{padding-right:22px}}body.logged-in .main-right>header{display:none}body.logged-in .main-right>#maincontent{padding-top:15px}.noob-menu-fab{display:none}@media (max-width:768px){.noob-menu-fab{display:flex;align-items:center;justify-content:center;position:fixed;right:16px;bottom:16px;z-index:1000;width:46px;height:46px;padding:0;border-radius:12px;cursor:pointer;color:var(--primary);background:rgba(255,255,255,.95);border:1px solid rgba(0,0,0,.85);box-shadow:0 4px 14px rgba(0,0,0,.15)}.noob-menu-fab svg{width:22px;height:22px}html[data-darkmode="true"] .noob-menu-fab{color:#a49cf0;background:rgba(20,20,25,.98);border-color:rgba(255,255,255,.85)}body.logged-in.toolbar-hidden .main-right>#maincontent{padding-right:0}}.toolbar-wrapper.hidden:not(.peek) .toolbar-container{visibility:hidden;transition:visibility 0s .35s}a:focus-visible,button:focus-visible,.btn:focus-visible,.cbi-button:focus-visible,.cbi-tabmenu a:focus-visible,.tabs a:focus-visible,input[type="checkbox"]:focus-visible,input[type="radio"]:focus-visible{outline:2px solid var(--p21-accent2);outline-offset:2px}.tabs{border-bottom:1px solid var(--p21-rule)}.tabs>li>a,.cbi-tabmenu>li>a{color:var(--p21-ink)}.tabs>li.active>a{color:var(--p21-accent)}.cbi-dropdown[open]>ul.dropdown>li[selected]{background:var(--p21-hover);background:color-mix(in srgb,var(--p21-accent) 16%,transparent);color:var(--p21-ink)}.cbi-dropdown[open]>ul.dropdown>li.focus{background:var(--p21-hover);color:var(--p21-ink);box-shadow:inset 3px 0 0 var(--p21-accent)}.cbi-dropdown[open]>ul.dropdown>li[selected].focus{background:var(--p21-hover);background:color-mix(in srgb,var(--p21-accent) 28%,transparent);color:var(--p21-ink);box-shadow:inset 3px 0 0 var(--p21-accent)}.cbi-dropdown[open]>ul.dropdown>li.p21-create-li{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.cbi-dropdown[open]>ul.dropdown>li.p21-create-li>input.create-item-input{flex:1 1 auto;min-width:0;width:auto}.cbi-dropdown:not([open]) .p21-create-add,.cbi-dropdown:not([open]) .p21-create-error,.cbi-dropdown>ul.preview .p21-create-add,.cbi-dropdown>ul.preview .p21-create-error{display:none}.p21-create-add{flex:0 0 auto;min-width:36px;min-height:32px;padding:0 10px;font-weight:700;line-height:1}.p21-create-error:not(:empty){flex:1 0 100%;padding:4px 6px;font-size:12.5px;white-space:normal;color:var(--p21-err-ink,var(--t-err-ink,var(--error-color-high,#c00)));border-left:3px solid currentColor}.cbi-tooltip{background:var(--p21-card);color:var(--p21-ink);border:1px solid var(--p21-rule)}div.cbi-value var,.td.cbi-value-field var{color:var(--p21-accent)}div.cbi-value var[data-tooltip],.td.cbi-value-field var[data-tooltip],div.cbi-value var.cbi-tooltip-container,.td.cbi-value-field var.cbi-tooltip-container{border-bottom-color:var(--p21-accent)}.cbi-dropdown>.more{color:var(--p21-dim)}.cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder]{color:inherit}::placeholder{color:var(--p21-dim);opacity:1}:root:not([data-darkmode="true"]) .zonebadge[style],:root:not([data-darkmode="true"]) .ifacebox-head[style]{color:#111;text-shadow:none}:root[data-darkmode="true"] .zonebadge[style],:root[data-darkmode="true"] .ifacebox-head[style]{color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.6)}.zonebadge[style]>strong,.zonebadge[style]>em,.zonebadge[style] .cbi-tooltip-container>strong,.ifacebox-head[style] *{color:inherit}.zonebadge-empty{color:var(--p21-ink);border-color:var(--p21-dim)}:root:not([data-darkmode="true"]) .ifacebox-head:not([style]){color:#111}:root[data-darkmode="true"] .ifacebox-head:not([style]){background-color:var(--p21-hover);color:var(--p21-ink)}:root[data-darkmode="true"] #view div[style*="border:1px solid #000;background:#fff"]{background:var(--p21-bg)!important;border-color:var(--p21-rule)!important}:root[data-darkmode="true"] #view div[style*="border:1px solid #000;background:#fff"] svg line{stroke:var(--p21-rule)!important;stroke-width:1px!important}.ifacebox{overflow:visible}.ifacebox>.ifacebox-head{border-top-left-radius:inherit;border-top-right-radius:inherit}.table .td:has(.cbi-tooltip-container){overflow:visible}@media (prefers-reduced-motion:reduce){*::before,*::after{transition:none!important;animation:none!important}}@media (max-width:720px){.cbi-section-node,.table-wrapper{max-width:100%}.table .td.cbi-section-actions>div{flex-wrap:wrap;row-gap:3px}#maincontent .controls>*{min-width:0;max-width:100%;flex-basis:100%;white-space:normal}#maincontent .controls>*>label{min-width:0}#maincontent .control-group{display:flex;flex-wrap:wrap;gap:4px;min-width:0;max-width:100%}#maincontent .control-group>input{flex:1 1 8em;min-width:0;width:auto}#maincontent .control-group>.btn{flex:0 1 auto}}:root{--primary:#4558d0;--red:#d6294d;--green:#1d8558}.cbi-button-neutral,.cbi-button-find,.cbi-button-up,.cbi-button-down,.cbi-button[name="zero"],.cbi-button[name="restart"],.modal div[class="btn"]{border-color:#5c6e81;background-color:#5c6e81}.cbi-button:not([class*="cbi-button-"]),.btn:not([class*="cbi-button-"]):not(.primary):not(.danger),.cbi-button.drag-handle{color:#4d5a69}.btn[value="Dismiss"],.cbi-button[value="Terminate"],.cbi-button[value="Disabled"],.cbi-button[onclick^="iface_reconnect"],.cbi-button[onclick="handleReset(event)"],.cbi-button-neutral[value="Disable"]{color:#212529}html:not([data-darkmode="true"]) footer,html:not([data-darkmode="true"]) footer .footer-separator,html:not([data-darkmode="true"]) footer span{color:#5f6872}footer a,footer .luci-link{color:var(--primary)}.modal ul li,.cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder],.cbi-dropdown>ul>li[unselectable]{color:#5c6e81}html:not([data-darkmode="true"]) .login-page .login-container .login-form .login-subtitle{color:#646d84}html:not([data-darkmode="true"]) .login-page footer,html:not([data-darkmode="true"]) .login-page footer a{color:#1f2a6b}html[data-darkmode="true"] abbr{color:#a49cf0!important}html[data-darkmode="true"] var,html[data-darkmode="true"] a:not(.cbi-button):not(.btn):not(.toolbar-item){color:#a49cf0}html[data-darkmode="true"] header .fill .status span[data-style="active"],html[data-darkmode="true"] #xhr_poll_status>.label.success{color:#fff!important}html[data-darkmode="true"] .cbi-button-reset,html[data-darkmode="true"] .cbi-input-remove,html[data-darkmode="true"] .cbi-button-remove,html[data-darkmode="true"] .cbi-button-negative,html[data-darkmode="true"] .btn[value="Dismiss"],html[data-darkmode="true"] .cbi-button[value="Terminate"],html[data-darkmode="true"] .cbi-button[value="Reset"],html[data-darkmode="true"] .cbi-button[value="Kill"],html[data-darkmode="true"] .cbi-button[value="Disabled"],html[data-darkmode="true"] .cbi-button-neutral[value="Disable"]{color:#111!important}html[data-darkmode="true"] footer,html[data-darkmode="true"] footer span{color:#a0a0a0}html[data-darkmode="true"] .modal ul li,html[data-darkmode="true"] .cbi-dropdown:not(.btn):not(.cbi-button)>ul>li[placeholder],html[data-darkmode="true"] .cbi-dropdown>ul>li[unselectable]{color:#9aa5b1}html[data-darkmode="true"] [data-page="admin-network-network"] .ifacebox-head[style*="--zone-color-rgb"]{color:#fff!important}html[data-darkmode="true"] .alert-message h4,html[data-darkmode="true"] .modal h4{color:#d4a514}html[data-darkmode="true"] label{color:inherit}html[data-darkmode="true"] .zonebadge>strong,html[data-darkmode="true"] .zonebadge>em{color:#111!important}html[data-darkmode="true"] .zonebadge>.ifacebadge{color:#ddd}html[data-darkmode="true"] .ifacebadge strong,html[data-darkmode="true"] .network-status-table strong{color:inherit}
