[hidden]{display:none!important}.nc-tooltip{position:fixed;z-index:9999;pointer-events:none;max-width:320px;padding:10px 12px;border-radius:8px;background:var(--color-surface-strong, #1a2335);color:var(--color-text-primary, #e2e8f0);border:1px solid var(--color-border, rgba(148, 163, 184, .18));box-shadow:0 8px 24px #00000052,0 2px 6px #0000002e;font-size:12px;line-height:1.4;opacity:0;transform:translateY(2px);transition:opacity 90ms ease-out,transform 90ms ease-out}.nc-tooltip.is-visible{opacity:1;transform:translateY(0)}.nc-tooltip__title{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:600;color:var(--color-text-primary, #e2e8f0);margin-bottom:2px}.nc-tooltip__sub{font-size:11px;color:var(--color-text-secondary, #94a3b8);margin-bottom:6px}.nc-tooltip__row{display:flex;gap:8px;align-items:baseline;padding:1px 0}.nc-tooltip__label{flex:0 0 auto;color:var(--color-text-secondary, #94a3b8);text-transform:uppercase;font-size:10px;letter-spacing:.04em;min-width:56px}.nc-tooltip__value{flex:1 1 auto;color:var(--color-text-primary, #e2e8f0);overflow-wrap:anywhere}.nc-tooltip__value.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.nc-tooltip__swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:middle;border:1px solid rgba(255,255,255,.15)}.nc-tooltip__hint{margin-top:6px;padding-top:6px;border-top:1px solid var(--color-border, rgba(148, 163, 184, .18));color:var(--color-text-secondary, #94a3b8);font-style:italic}.cat-dialog{border:0;padding:0;border-radius:12px;background:transparent;max-width:min(520px,92vw);width:520px}.cat-dialog::backdrop{background:#00000073;backdrop-filter:blur(2px)}.cat-dialog__inner{background:var(--color-surface, #1a2335);color:var(--color-text-primary, #e2e8f0);border:1px solid var(--color-border, rgba(148, 163, 184, .18));border-radius:12px;padding:16px 18px;box-shadow:0 12px 36px #00000080}.cat-dialog__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cat-dialog__header h3{margin:0;font-size:15px;font-weight:600}.cat-list{list-style:none;margin:0;padding:0;max-height:50vh;overflow-y:auto;border:1px solid var(--color-border, rgba(148, 163, 184, .18));border-radius:8px}.cat-list__row{display:grid;grid-template-columns:28px 1fr auto auto;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--color-border, rgba(148, 163, 184, .18))}.cat-list__row:last-child{border-bottom:0}.cat-list__color{width:22px;height:22px;border:1px solid rgba(255,255,255,.18);border-radius:4px;cursor:pointer;padding:0;background:none}.cat-list__name{background:transparent;border:1px solid transparent;color:inherit;font-family:var(--font-mono);font-size:13px;padding:4px 6px;border-radius:4px;min-width:0}.cat-list__name:hover{background:#ffffff0a}.cat-list__name:focus{outline:0;background:#ffffff14;border-color:var(--color-border, rgba(148, 163, 184, .3))}.cat-list__count{font-size:11px;color:var(--color-text-secondary, #94a3b8);white-space:nowrap}.cat-list__delete{background:transparent;border:0;color:var(--color-text-secondary, #94a3b8);cursor:pointer;font-size:14px;padding:4px 8px;border-radius:4px}.cat-list__delete:hover{background:#ef444429;color:#ef4444}.cat-add{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;margin-top:12px}.cat-add input[type=color]{width:28px;height:28px;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:4px;background:none;cursor:pointer}.cat-add input[type=text]{background:transparent;border:1px solid var(--color-border, rgba(148, 163, 184, .18));color:inherit;padding:6px 10px;border-radius:6px;font-family:var(--font-mono);font-size:13px}.cat-hint{margin:8px 0 0;font-size:12px;color:var(--color-danger-500, #ef4444)}.netcalc-app{display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height, 4rem));gap:0}.stats-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--color-border);border-bottom:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-3);border:1px solid var(--color-border)}.stat{background:var(--color-surface-raised);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:2px}.stat__label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.stat__value{font-family:var(--font-mono);font-size:17px;font-weight:600;color:var(--color-text);line-height:1.2;letter-spacing:-.02em}.stat__value small{color:var(--color-text-muted);font-size:11px;font-weight:400;margin-left:4px}.stat--ok .stat__value{color:var(--color-secondary-500)}.stat--warn .stat__value{color:var(--color-warn-500)}.stat--accent .stat__value{color:var(--color-accent-500)}.workspace{display:grid;grid-template-columns:400px 1fr;gap:var(--space-3);flex:1;min-height:0}.left-rail{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-y:auto;display:flex;flex-direction:column}.rail-section{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.rail-section:last-child{border-bottom:0}.rail-section--tip{background:color-mix(in srgb,var(--color-primary-500) 5%,transparent)}.rail-section__heading{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin:0 0 var(--space-2);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.rail-section__heading .count{background:var(--color-surface);padding:1px 8px;border-radius:var(--radius-full);font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);font-weight:500}.rail-section__action{background:transparent;border:0;color:var(--color-text-muted);cursor:pointer;width:22px;height:22px;border-radius:var(--radius-sm);display:grid;place-items:center;font-size:12px}.rail-section__action:hover{background:var(--color-surface);color:var(--color-text)}.tip{font-size:12px;color:var(--color-text-muted);line-height:1.5;margin:0}.calc-card .calc-class-pill{font-family:var(--font-mono);font-size:11px;padding:3px 9px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-primary-500) 22%,transparent);color:var(--color-primary-700);font-weight:700;letter-spacing:.04em;border:1px solid color-mix(in srgb,var(--color-primary-500) 35%,transparent)}[data-theme=dark] .calc-class-pill,:root:not([data-theme=light]) .calc-class-pill{color:var(--color-primary-300)}.calc-input-wrap{display:flex;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-3);margin-bottom:var(--space-2);transition:border-color .15s ease}.calc-input-wrap:focus-within{border-color:var(--color-primary-500)}.calc-input-wrap input{flex:1;background:transparent;border:0;outline:0;color:var(--color-text);font-family:var(--font-mono);font-size:14px;font-weight:500;padding:8px 0}.preset-row{display:flex;gap:4px;margin-bottom:var(--space-3);flex-wrap:wrap}.btn--xs{padding:3px 8px;font-size:11px}.calc-bitgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:var(--space-3) 0}.octet{display:flex;flex-direction:column;gap:3px}.octet-bits{display:grid;grid-template-columns:repeat(8,1fr);gap:1px;background:var(--color-surface);border-radius:4px;padding:2px}.bit{height:18px;display:grid;place-items:center;font-family:var(--font-mono);font-size:10px;color:var(--color-text-muted);background:var(--color-surface-raised);border-radius:2px;cursor:pointer;transition:background .15s ease,color .15s ease}.bit:hover{background:color-mix(in srgb,var(--color-primary-500) 30%,var(--color-surface-raised));color:var(--color-text)}.bit.is-net{background:color-mix(in srgb,var(--color-primary-500) 35%,var(--color-surface-raised));color:#fff}.bit.is-net.set{background:var(--color-primary-500);color:#fff;font-weight:700}.bit.prefix-edge{box-shadow:inset -2px 0 0 var(--color-warn-500)}.octet-decimal{font-family:var(--font-mono);font-size:11px;color:var(--color-text-muted);text-align:center}.calc-fields{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-border);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border);margin:0 0 var(--space-3)}.calc-fields>div{background:var(--color-surface-raised);padding:6px 10px}.calc-fields dt{font-size:9px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.calc-fields dd{font-family:var(--font-mono);font-size:12px;color:var(--color-text);margin:0}.calc-actions{display:flex;gap:var(--space-2)}.calc-actions .btn{flex:1;justify-content:center}.calc-history__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1px}.calc-history__list li{display:grid;grid-template-columns:1fr auto;align-items:center;padding:5px 8px;border-radius:var(--radius-sm);cursor:pointer;margin:0 -8px;transition:background .15s ease}.calc-history__list li:hover{background:var(--color-surface)}.calc-history__list li.is-current{background:color-mix(in srgb,var(--color-primary-500) 12%,transparent)}.calc-history__list li.is-current .h-cidr{color:var(--color-primary-500);font-weight:500}.h-cidr{font-family:var(--font-mono);font-size:12px;color:var(--color-text)}.h-meta{font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono)}.map-area{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;min-height:0}.map-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap}.toolbar-title{font-size:13px;font-weight:600;color:var(--color-text)}.toolbar-spacer{flex:1}.toolbar-actions{display:flex;gap:4px;align-items:center}.control-group{display:flex;align-items:center;gap:6px}.control-label{font-size:11px;color:var(--color-text-muted);font-weight:500}.control-input{background:var(--color-surface-raised);border:1px solid var(--color-border);color:var(--color-text);padding:4px 8px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:12px;outline:0;min-width:160px}.control-input:focus{border-color:var(--color-primary-500)}.view-switch{display:flex;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:3px;gap:2px}.view-switch__btn{background:transparent;border:0;color:var(--color-text-muted);font:inherit;font-size:12px;padding:5px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:color .15s ease,background .15s ease}.view-switch__btn:hover{color:var(--color-text)}.view-switch__btn.is-active{background:var(--color-primary-500);color:#fff;box-shadow:0 1px 3px #0003}.btn.btn--icon{width:30px;height:30px;padding:0;display:grid;place-items:center;font-size:14px;gap:0}.btn.btn--icon>svg,.btn.btn--icon svg{display:block;width:18px;height:18px;min-width:18px;min-height:18px;flex:none}.view-stage{flex:1;overflow:hidden;position:relative;min-height:320px;max-height:60vh}.view{position:absolute;inset:0;overflow-y:auto;padding:var(--space-3) var(--space-4);opacity:0;pointer-events:none;transition:opacity .2s ease}.view.view--active{opacity:1;pointer-events:auto}.map-row{--row-color: var(--color-primary-500);display:grid;grid-template-columns:170px 1fr;gap:0;margin-bottom:8px;border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface-raised);border:1px solid var(--color-border);position:relative;cursor:pointer;min-height:56px;transition:border-color .15s ease,box-shadow .15s ease}.map-row:hover{border-color:color-mix(in srgb,var(--row-color) 50%,var(--color-border));box-shadow:0 4px 14px #0000004d}.map-row.is-warning{border-color:color-mix(in srgb,var(--color-warn-500) 60%,var(--color-border))}.map-row.is-nested,.map-row.is-conflict{border-left:3px solid #ef4444}.map-row.is-nested .map-row__meta,.map-row.is-conflict .map-row__meta{color:#f87171;font-weight:600}.map-row.is-conflict{background:color-mix(in srgb,#ef4444 6%,var(--color-surface))}.map-row__label-box{background:var(--color-surface);border-right:1px solid var(--color-border);padding:8px 10px;display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.map-row__cidr-input{background:transparent;border:0;color:var(--color-text);font-family:var(--font-mono);font-size:13px;font-weight:500;padding:0;outline:0;width:100%;transition:color .15s ease}.map-row__cidr-input:hover{color:var(--color-primary-500)}.map-row__cidr-input:focus{color:var(--color-text);box-shadow:inset 0 -1px 0 var(--color-primary-500)}.map-row__cidr-input::placeholder{color:var(--color-text-muted)}.map-row__meta{font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-row__meta.warn{color:var(--color-warn-500)}.map-row__card{position:relative;margin:6px;border-radius:var(--radius-sm);background:linear-gradient(180deg,color-mix(in srgb,var(--row-color) 90%,white 10%),var(--row-color));box-shadow:0 1px #ffffff4d inset,0 -2px #0000002e inset,0 2px 8px #00000038;display:flex;align-items:center;padding:0 14px;gap:10px;min-height:44px;overflow:hidden;transition:filter .15s ease}.map-row:hover .map-row__card{filter:brightness(1.06)}.map-row__card-cidr{font-family:var(--font-mono);font-size:12px;font-weight:600;color:#fff;flex-shrink:0;text-shadow:0 1px 1px rgba(0,0,0,.25)}input.map-row__card-cidr{background:transparent;border:0;outline:0;padding:4px 0;width:11ch;min-width:11ch;border-radius:3px;transition:background .15s ease,padding .15s ease,margin .15s ease}input.map-row__card-cidr:hover{background:#ffffff1a;padding:4px 6px;margin:0 -6px}input.map-row__card-cidr:focus{background:#00000038;padding:4px 6px;margin:0 -6px}.map-row__card-dot{color:#ffffffb3;flex-shrink:0}.map-row__label-input{background:transparent;border:0;color:#fff;font:inherit;font-family:var(--font-sans);font-size:13px;padding:4px 0;outline:0;flex:1;min-width:0;text-shadow:0 1px 1px rgba(0,0,0,.25);border-radius:3px;transition:background .15s ease,padding .15s ease,margin .15s ease}.map-row__label-input::placeholder{color:#fff9;font-style:italic}.map-row__label-input:hover{background:#ffffff1a;padding:4px 6px;margin:0 -6px}.map-row__label-input:focus{background:#00000038;padding:4px 6px;margin:0 -6px}.map-row__card-meta{font-size:11px;color:#ffffffd9;font-family:var(--font-mono);flex-shrink:0;text-shadow:0 1px 1px rgba(0,0,0,.25)}.map-row__controls{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:auto}.map-row__cat-select{background:#0000004d;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:var(--radius-full);font-family:var(--font-sans);font-size:11px;padding:3px 22px 3px 10px;outline:0;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,white 50%),linear-gradient(-45deg,transparent 50%,white 50%);background-position:calc(100% - 12px) center,calc(100% - 7px) center;background-size:4px 4px,4px 4px;background-repeat:no-repeat;text-shadow:0 1px 1px rgba(0,0,0,.25)}.map-row__cat-select:hover{background-color:#00000073}.map-row__delete{width:24px;height:24px;border:1px solid rgba(255,255,255,.22);background:#0003;color:#fff;border-radius:50%;cursor:pointer;font-size:12px;display:grid;place-items:center;transition:background .15s ease,border-color .15s ease}.map-row__delete:hover{background:var(--color-danger-500);border-color:var(--color-danger-500)}.map-row.is-warning .map-row__card:before{content:"⚠";position:absolute;top:50%;left:-9px;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;background:var(--color-warn-500);color:#000;font-size:11px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px var(--color-surface-raised);z-index:1}.map-row.is-gap .map-row__card{background:transparent;border:1px dashed color-mix(in srgb,var(--color-text) 18%,transparent);box-shadow:none}.map-row.is-gap .map-row__card-cidr,.map-row.is-gap .map-row__label-input,.map-row.is-gap .map-row__card-meta{color:var(--color-text-muted);text-shadow:none}.map-row.is-gap .map-row__controls{display:none}.available-strip{min-height:50px;margin-bottom:8px;background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--color-text) 4%,transparent) 0,color-mix(in srgb,var(--color-text) 4%,transparent) 8px,transparent 8px,transparent 16px);border:1px dashed color-mix(in srgb,var(--color-text) 18%,transparent);border-radius:var(--radius-md);display:flex;align-items:center;padding:10px 14px;gap:12px;color:var(--color-text-muted);font-size:12px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.available-strip:hover{background:color-mix(in srgb,var(--color-secondary-500) 5%,transparent);border-color:color-mix(in srgb,var(--color-secondary-500) 50%,transparent)}.available-strip strong{font-family:var(--font-mono);color:var(--color-text);font-weight:600}.available-strip .next-cta{margin-left:auto;background:color-mix(in srgb,var(--color-secondary-500) 18%,transparent);color:var(--color-secondary-500);border:1px solid color-mix(in srgb,var(--color-secondary-500) 50%,transparent);padding:4px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600;cursor:pointer;font-family:var(--font-mono)}.available-strip__meta{color:var(--color-text-muted);font-size:11px}.add-range-row{min-height:48px;margin-bottom:8px;border-radius:var(--radius-md);border:1px dashed var(--color-border);display:flex;align-items:center;justify-content:center;gap:8px;color:var(--color-text-muted);font-size:13px;font-weight:500;cursor:pointer;background:transparent;transition:background .15s ease,border-color .15s ease,color .15s ease;font-family:inherit}.add-range-row:hover{background:color-mix(in srgb,var(--color-primary-500) 5%,transparent);border-color:var(--color-primary-500);color:var(--color-primary-500)}.empty-state{color:var(--color-text-muted);font-size:13px;text-align:center;padding:var(--space-8)}.treemap{width:100%;height:100%;background:var(--color-surface);border-radius:var(--radius-md);position:relative;overflow:hidden;min-height:360px;background-image:repeating-linear-gradient(45deg,transparent 0,transparent 8px,color-mix(in srgb,var(--color-text) 2%,transparent) 8px,color-mix(in srgb,var(--color-text) 2%,transparent) 9px)}.tile{position:absolute;border-radius:4px;cursor:pointer;overflow:hidden;padding:6px 8px;color:#fff;font-family:var(--font-mono);font-size:11px;background:var(--tile-bg);box-shadow:inset 0 0 0 1px #ffffff2e,inset 0 -2px #0000001a,0 1px 2px #0003;display:flex;flex-direction:column;gap:2px;line-height:1.2;transition:filter .15s ease,transform .15s ease}.tile:hover{filter:brightness(1.1);transform:translateY(-1px);z-index:5}.tile__cidr{font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile__label{font-size:10px;color:#ffffffd9;font-family:var(--font-sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile__size{font-size:10px;color:#ffffffb3;margin-top:auto}.tile.is-container{background:color-mix(in srgb,var(--color-text) 4%,transparent);color:var(--color-text-muted);border:1.5px dashed var(--color-border);box-shadow:none;padding:12px}.tile.is-container .tile__cidr,.tile.is-container .tile__label,.tile.is-container .tile__size{color:var(--color-text-muted)}.tile.is-warn:after{content:"⚠";position:absolute;top:4px;right:6px;background:var(--color-warn-500);color:#000;width:14px;height:14px;border-radius:50%;font-size:9px;display:grid;place-items:center;font-weight:700}.atlas{width:100%;height:100%;display:grid;place-items:center;min-height:400px}.atlas-grid{width:min(580px,calc(100vh - 380px));height:min(580px,calc(100vh - 380px));display:grid;grid-template-columns:repeat(16,1fr);grid-template-rows:repeat(16,1fr);gap:2px;padding:18px;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 0 0 1px var(--color-border) inset;position:relative}.atlas-grid:after{content:attr(data-parent);position:absolute;top:-1px;left:18px;background:var(--color-surface-raised);color:var(--color-text);font-family:var(--font-mono);font-size:10px;padding:3px 8px;border-radius:0 0 6px 6px;border:1px solid var(--color-border);border-top:0}.atlas-cell{position:relative;background:color-mix(in srgb,var(--color-text) 4%,transparent);border-radius:3px;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.atlas-cell:hover{transform:scale(1.4);z-index:5;box-shadow:0 0 0 2px #fff6;background:color-mix(in srgb,var(--color-text) 12%,transparent)}.atlas-cell.allocated{background:var(--cell-color);box-shadow:inset 0 0 0 1px #ffffff26}.atlas-cell.in-container{background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--color-text) 6%,transparent) 0 3px,color-mix(in srgb,var(--color-text) 2%,transparent) 3px 6px)}.atlas-cell.warn:after{content:"";position:absolute;top:-2px;right:-2px;width:6px;height:6px;background:var(--color-warn-500);border-radius:50%}.report-panel{border-top:1px solid var(--color-border);background:var(--color-surface-raised);display:flex;flex-direction:column;max-height:240px;flex-shrink:0}.report-tabs{display:flex;border-bottom:1px solid var(--color-border);padding:0 var(--space-4);gap:4px}.report-tab{background:transparent;border:0;color:var(--color-text-muted);font:inherit;font-size:12px;padding:10px 14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:6px;transition:color .15s ease,border-color .15s ease}.report-tab:hover{color:var(--color-text)}.report-tab.is-active{color:var(--color-text);border-bottom-color:var(--color-primary-500);font-weight:600}.report-tab .badge{background:var(--color-surface);padding:1px 6px;border-radius:var(--radius-full);font-size:10px;color:var(--color-text-muted);font-weight:500}.report-content{flex:1;overflow-y:auto;padding:var(--space-3) var(--space-4)}.report-section{display:none}.report-section.is-active{display:block}.report-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-3);padding:6px var(--space-2);border-radius:var(--radius-sm);transition:background .15s ease;font-size:12px}.report-item:hover{background:var(--color-surface)}.report-item__icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.report-item__icon.danger{background:color-mix(in srgb,var(--color-danger-500) 25%,transparent);color:var(--color-danger-500)}.report-item__icon.warn{background:color-mix(in srgb,var(--color-warn-500) 25%,transparent);color:var(--color-warn-500)}.report-item__icon.info{background:color-mix(in srgb,var(--color-primary-500) 25%,transparent);color:var(--color-primary-500)}.report-item__icon.ok{background:color-mix(in srgb,var(--color-secondary-500) 25%,transparent);color:var(--color-secondary-500)}.report-item__body{display:flex;flex-direction:column;gap:1px;min-width:0}.report-item__title{color:var(--color-text)}.report-item__title code{font-family:var(--font-mono);font-size:11px;background:var(--color-surface);padding:1px 5px;border-radius:3px;margin:0 2px;border:1px solid var(--color-border)}.report-item__detail{font-size:11px;color:var(--color-text-muted)}.inspector{position:fixed;top:var(--header-height, 4rem);right:0;bottom:0;width:380px;background:var(--color-surface-raised);border-left:1px solid var(--color-border);box-shadow:-16px 0 32px #0000002e;z-index:60;display:flex;flex-direction:column;transform:translate(100%);transition:transform .2s ease}.inspector.is-open{transform:translate(0)}.inspector__header{padding:var(--space-4);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:var(--space-3)}.inspector__color{width:4px;height:36px;border-radius:2px;background:var(--ins-color, var(--color-primary-500))}.inspector__title{flex:1;min-width:0}.inspector__cidr{font-family:var(--font-mono);font-size:16px;font-weight:600;color:var(--color-text);line-height:1.2}.inspector__label{font-size:12px;color:var(--color-text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inspector__close{background:transparent;border:0;color:var(--color-text-muted);cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);font-size:16px}.inspector__close:hover{background:var(--color-surface);color:var(--color-text)}.inspector__body{flex:1;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-5)}.inspector__banner{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:12px;line-height:1.4}.inspector__banner--create{background:color-mix(in srgb,var(--color-secondary-500) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-secondary-500) 35%,transparent)}.inspector__banner--create:before{content:"+";width:22px;height:22px;flex-shrink:0;border-radius:50%;background:var(--color-secondary-500);color:#fff;display:grid;place-items:center;font-weight:700;font-size:16px}.inspector__banner--reservation{background:color-mix(in srgb,var(--color-text) 6%,transparent);border:1px dashed var(--color-border)}.inspector__banner--reservation:before{content:"▤";width:22px;height:22px;flex-shrink:0;color:var(--color-text-muted);font-size:16px;display:grid;place-items:center}.inspector__banner strong{color:var(--color-text);display:block;margin-bottom:2px}.inspector__banner span{color:var(--color-text-muted)}.inspector__edit-form{display:flex;flex-direction:column;gap:8px;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:var(--space-4)}.inspector__edit-form label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.inspector__edit-form input,.inspector__edit-form select{background:var(--color-surface-raised);border:1px solid var(--color-border);color:var(--color-text);padding:7px 10px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px;outline:0}.inspector__edit-form input:focus,.inspector__edit-form select:focus{border-color:var(--color-secondary-500)}.inspector__section{margin-bottom:var(--space-4)}.inspector__section h4{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin:0 0 var(--space-2)}.inspector__fields{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;margin:0}.inspector__fields>div{background:var(--color-surface-raised);padding:6px 10px}.inspector__fields dt{font-size:9px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin:0}.inspector__fields dd{font-family:var(--font-mono);font-size:12px;color:var(--color-text);margin:0}.inspector__note{font-size:12px;color:var(--color-text-muted);line-height:1.45;margin:0}.inspector__note code{font-family:var(--font-mono);background:var(--color-surface);padding:1px 5px;border-radius:3px;border:1px solid var(--color-border);color:var(--color-text)}.inspector__note.ok{color:var(--color-secondary-500)}.inspector__actions{display:flex;flex-direction:column;gap:6px}.inspector__action{display:flex;align-items:center;gap:10px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);padding:8px 12px;border-radius:var(--radius-sm);font:inherit;font-size:13px;cursor:pointer;text-align:left;transition:background .15s ease,border-color .15s ease}.inspector__action:hover{background:var(--color-surface-raised);border-color:var(--color-text-muted)}.inspector__action__icon{width:24px;height:24px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-primary-500) 18%,transparent);color:var(--color-primary-500);display:grid;place-items:center;font-size:14px;flex-shrink:0}.inspector__action__main{flex:1;min-width:0}.inspector__action__title{font-weight:500;color:var(--color-text);display:block}.inspector__action__hint{font-size:11px;color:var(--color-text-muted);display:block}.inspector__action--danger .inspector__action__icon{background:color-mix(in srgb,var(--color-danger-500) 18%,transparent);color:var(--color-danger-500)}.inspector__action--accent .inspector__action__icon{background:color-mix(in srgb,var(--color-accent-500) 18%,transparent);color:var(--color-accent-500)}.map-tooltip{position:fixed;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);min-width:220px;z-index:80;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .1s,transform .1s;box-shadow:var(--shadow-lg);font-size:12px}.map-tooltip:not(.map-tooltip--hidden){opacity:1;transform:translateY(0)}.map-tooltip__color-bar{height:3px;border-radius:1.5px;margin-bottom:var(--space-2)}.map-tooltip__cidr{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--color-text)}.map-tooltip__label{font-size:11px;color:var(--color-text-muted);margin-bottom:var(--space-2)}.map-tooltip__row{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-muted);padding:1px 0}.map-tooltip__row strong{color:var(--color-text);font-family:var(--font-mono);font-weight:500}.btn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font:inherit;font-size:12px;font-weight:500;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);cursor:pointer;transition:background-color .15s ease,border-color .15s ease;font-family:var(--font-mono)}.btn:hover{border-color:var(--color-primary-500)}.btn--primary{background:var(--color-primary-500);color:#fff;border-color:var(--color-primary-500);font-family:var(--font-sans)}.btn--primary:hover{background:var(--color-primary-600);border-color:var(--color-primary-600)}.netcalc-reset{color:var(--color-text-muted)}.netcalc-reset:hover{color:var(--color-danger-500);border-color:var(--color-danger-500)}.dropdown{position:relative}.dropdown summary{list-style:none;cursor:pointer}.dropdown summary::-webkit-details-marker{display:none}.dropdown__menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:4px;min-width:120px;z-index:20;display:flex;flex-direction:column;gap:1px}.dropdown__menu button{background:transparent;border:0;color:var(--color-text);font:inherit;font-size:12px;padding:6px 10px;border-radius:var(--radius-sm);cursor:pointer;text-align:left}.dropdown__menu button:hover{background:var(--color-surface)}.map-row--preview{--preview-accent: var(--color-primary-500);--preview-text: var(--color-primary-300, #60a5fa);background:transparent!important;border:1px dashed var(--preview-accent);border-radius:var(--radius-sm);margin:4px 0;opacity:.92}.map-row--preview.is-warn,.map-row--preview.is-error{--preview-accent: #ef4444;--preview-text: #f87171}.map-row--preview .map-row__card{background:linear-gradient(180deg,color-mix(in srgb,var(--preview-accent) 18%,transparent),color-mix(in srgb,var(--preview-accent) 6%,transparent));border:1px dashed var(--preview-accent);box-shadow:none}.map-row--preview .map-row__card-cidr,.map-row--preview .map-row__label-input{color:var(--preview-text);font-style:italic}.map-row--preview .map-row__cidr-input{color:var(--preview-text);font-family:var(--font-mono);font-size:12px;font-weight:600}.map-row--preview .map-row__meta{color:var(--preview-text);font-style:italic}.atlas-cell.is-preview{--preview-accent: var(--color-primary-500);outline:2px dashed var(--preview-accent);outline-offset:-2px;box-shadow:inset 0 0 0 9999px color-mix(in srgb,var(--preview-accent) 22%,transparent)}.atlas-cell.is-preview.is-warn,.atlas-cell.is-preview.is-error{--preview-accent: #ef4444}.treemap-preview-ribbon{--preview-accent: var(--color-primary-500);--preview-text: var(--color-primary-300, #60a5fa);display:flex;align-items:baseline;gap:6px;margin:0 0 8px;padding:6px 12px;font-size:12px;color:var(--preview-text);background:color-mix(in srgb,var(--preview-accent) 12%,transparent);border:1px dashed var(--preview-accent);border-radius:var(--radius-sm)}.treemap-preview-ribbon.is-warn,.treemap-preview-ribbon.is-error{--preview-accent: #ef4444;--preview-text: #f87171}.treemap-preview-ribbon .mono{font-family:var(--font-mono);font-weight:600}.treemap-preview-ribbon__meta{color:var(--color-text-secondary, #94a3b8)}.netcalc-footer{margin-top:var(--space-4)}.privacy-hint{margin-top:var(--space-6);padding:var(--space-3) var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;background:var(--color-surface-raised);border-radius:var(--radius-lg);line-height:var(--leading-relaxed)}.share-section{margin-top:var(--space-8);text-align:center}.share-support{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted)}.share-support__icon{display:inline-flex}.share-support__link{color:var(--color-primary-600);font-weight:var(--weight-semibold);text-decoration:none}.share-support__link:hover{text-decoration:underline}.share-section__heading{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-3)}.share-section__buttons{display:flex;align-items:center;justify-content:center;gap:var(--space-2);flex-wrap:wrap}.share-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-muted);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-full);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.share-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.share-btn__icon{display:inline-flex}.share-more{position:relative}.share-more__dropdown{display:none;position:absolute;bottom:100%;right:0;margin-bottom:var(--space-2);padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:10;flex-direction:column;gap:var(--space-1);min-width:160px}.share-more__dropdown--open{display:flex}.share-more__dropdown .share-btn{width:100%;justify-content:flex-start;border:none;border-radius:var(--radius-lg);background:transparent}.share-more__dropdown .share-btn:hover{background:var(--color-surface-raised)}.netcalc-app--calc-only{display:block;min-height:0;max-width:720px;margin:0 auto;padding:var(--space-4)}.netcalc-calc-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.netcalc-calc-header__title{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.netcalc-calc-header__cta{flex:0 0 auto;white-space:nowrap}.netcalc-calc-header__sub{margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:.95rem;line-height:1.55}.netcalc-calc-header__sub-cta{display:inline}.netcalc-calc-header__sub-link{color:var(--color-primary-600);text-decoration:none;font-weight:600;white-space:nowrap}.netcalc-calc-header__sub-link:hover{text-decoration:underline}.netcalc-calc-rail{overflow-y:visible}.netcalc-app--calc-only .calc-input-wrap input#calc-input{font-size:1.1rem}@media(max-width:600px){.netcalc-app--calc-only .calc-bitgrid{grid-template-columns:repeat(2,1fr);gap:8px 12px}.netcalc-app--calc-only .calc-fields{grid-template-columns:1fr}.netcalc-calc-header__title{font-size:1.25rem}}.netcalc-plan-breadcrumb{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);font-size:.85rem}.netcalc-plan-breadcrumb__link{color:var(--color-text-secondary);text-decoration:none;font-weight:500;transition:color .15s ease}.netcalc-plan-breadcrumb__link:hover{color:var(--color-primary-500)}.netcalc-plan-breadcrumb__title{color:var(--color-text-secondary);margin-left:auto;font-weight:600;letter-spacing:.02em;text-transform:uppercase;font-size:.75rem}
