body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.nav-button.logout-button{background:linear-gradient(120deg,var(--accent-start),var(--accent-end));border:none;border-radius:999px;box-shadow:0 12px 25px #4f5cdc59;color:#fff;cursor:pointer;font-family:Inter,Segoe UI,sans-serif;font-size:.85rem;font-weight:600;padding:.55rem 1.4rem;transition:transform .2s ease,box-shadow .2s ease}.nav-button.logout-button:hover{box-shadow:0 16px 32px #4f5cdc73;transform:translateY(-1px)}.logs-page{align-items:stretch;display:flex;flex-direction:column;gap:1.75rem;text-align:left}.logs-page-intro{color:var(--text-secondary);font-size:.95rem;margin:0}.logs-page-intro strong{color:var(--text-primary);font-weight:600}.logs-filter{margin:0}.logs-filter-grid{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-start}.logs-filter-control{background:#121422bf;border:1px solid #7e8cff33;border-radius:12px;color:var(--text-primary);font:inherit;min-width:160px;padding:.5rem .75rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.logs-filter-control::placeholder{color:var(--text-muted)}.logs-filter-control:focus{border-color:var(--surface-border-strong);box-shadow:0 0 0 3px #7f5af02e;outline:none}.logs-filter-number{max-width:110px;text-align:right}.logs-filter-apply{padding:.55rem 1.35rem;white-space:nowrap}.logs-filter-dropdown{min-width:190px}.logs-filter-dropdown-panel{min-width:210px}.logs-list-container{display:flex;flex-direction:column;gap:1.25rem}.logs-empty{background:#0d0f1c94;border:1px solid #828cd238;border-radius:16px;color:var(--text-secondary);padding:1.75rem 1.5rem;text-align:center}.logs-list{display:flex;flex-direction:column;gap:.75rem}.log-card{--level-color:var(--accent-end);grid-gap:.65rem 1.1rem;align-items:start;background:linear-gradient(155deg,#111321e6,#181b2fc7);border:1px solid #ffffff14;border-radius:16px;box-shadow:0 10px 24px #0608184d;display:grid;gap:.65rem 1.1rem;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;padding:.85rem 1.15rem;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;width:100%}.log-card:before{border-left:2px solid var(--level-color);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.log-card>*{position:relative;z-index:1}.log-card:hover{border-color:#ffffff2e;box-shadow:var(--shadow-lift);transform:translateY(-3px)}.log-card-info{--level-color:#8195ff}.log-card-warning{--level-color:#f4c266}.log-card-error{--level-color:#ff7b7b}.log-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:.85rem;grid-column:1/-1;justify-content:space-between}.log-meta{color:var(--text-muted);font-size:.85rem}.log-level-badge{background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;color:var(--level-color);font-size:.7rem;letter-spacing:.18em;padding:.28rem .7rem;text-transform:uppercase}.log-card-error .log-level-badge,.log-card-info .log-level-badge,.log-card-warning .log-level-badge{background:#ffffff0d;border-color:#fff3}.log-card-body{grid-column:1/-1}.log-card-main{grid-gap:.65rem 1rem;align-items:start;display:grid;gap:.65rem 1rem;grid-template-columns:minmax(0,1fr)}.log-card-main .log-message{grid-column:1/-1}.log-card-main--with-details{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr)}.log-message-block{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;padding:.9rem 1.1rem;transition:background .2s ease,border-color .2s ease}.log-card:hover .log-message-block{background:#ffffff14;border-color:#ffffff24}.log-card-main--with-details .log-details{grid-column:2/3}.log-card-main--with-details .log-message{grid-column:1/2}.log-message{color:var(--text-primary);font-size:.95rem;line-height:1.5;margin:0}.log-details{grid-gap:.6rem 1rem;display:grid;gap:.6rem 1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0}.log-detail dt{color:var(--text-muted);font-size:.68rem;letter-spacing:.16em;margin:0;text-transform:uppercase}.log-detail dd{color:var(--text-secondary);margin:.2rem 0 0;word-break:break-word}.log-card-footer{align-items:center;border-top:1px solid #ffffff14;color:var(--text-muted);display:flex;font-size:.8rem;gap:.75rem;grid-column:1/-1;justify-content:space-between;padding-top:.5rem}.log-id{color:var(--text-secondary)}.log-id,.log-source{font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:.78rem}.log-source{color:var(--text-muted)}@media (max-width:900px){.logs-filter-control{min-width:140px}.log-card{padding:.85rem 1rem}.log-card,.log-card-main,.log-card-main--with-details{grid-template-columns:1fr}.log-message-block{padding:.85rem .95rem}.log-card-main .log-details,.log-card-main--with-details .log-details{grid-column:1/-1}}.level-dropdown{display:inline-flex;position:relative;width:auto}.level-dropdown-button{background:#121422d9;border:1px solid #7e8cff38;border-radius:12px;color:var(--text-primary);cursor:pointer;font:inherit;overflow:hidden;padding:.6rem 2.25rem .6rem .85rem;position:relative;text-align:left;text-overflow:ellipsis;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap;width:100%}.level-dropdown-button:focus,.level-dropdown-button:hover{border-color:var(--surface-border-strong);box-shadow:0 0 0 3px #7f5af02e;outline:none}.level-dropdown-button:after{color:var(--text-muted);content:"\25BC";font-size:.7rem;pointer-events:none;position:absolute;right:.85rem;top:50%;transform:translateY(-50%)}.level-dropdown-list{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#121422f2;border:1px solid #7e8cff3d;border-radius:14px;box-shadow:0 18px 36px #0608186b;box-sizing:border-box;left:0;padding:.6rem;position:absolute;text-align:left;top:calc(100% + .35rem);width:max(220px,100%);z-index:20}.level-checkbox{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;gap:.45rem;margin:0;padding:.35rem .45rem;transition:background .2s ease}.level-checkbox:hover{background:#7f5af01f}.level-checkbox input{accent-color:var(--accent-start);margin:0}.sudoku-panel{align-items:center;display:flex;flex-direction:column;gap:1.5rem;width:100%}.sudoku-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--surface-color);border:1px solid var(--surface-border);border-radius:24px;box-shadow:var(--shadow-soft);max-width:640px;padding:1.5rem;width:100%}.sudoku-board-card{display:flex;justify-content:center;padding:1.25rem}.sudoku-controls-card{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem 1.5rem}.sudoku-topline{display:flex;justify-content:center;width:100%}.sudoku-topline-inner{align-items:flex-start;display:flex;gap:1.25rem;justify-content:space-between;max-width:640px;width:100%}.sudoku-topline-left{display:flex;flex:1 1;justify-content:flex-start}.sudoku-toast-slot{display:flex;flex:1 1;justify-content:flex-end;min-height:64px}.timer{font-feature-settings:"tnum";align-items:center;background:#12162ae6;border:1px solid #7e8cff3d;border-radius:18px;box-shadow:0 16px 34px #06091a52;color:var(--text-primary);display:inline-flex;font-variant-numeric:tabular-nums;gap:1rem;padding:.75rem 1.25rem}.timer-time{align-items:flex-start;display:flex;flex-direction:column;gap:.2rem}.timer-label{color:var(--text-muted);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase}.timer-value{font-size:1.85rem;font-weight:600;letter-spacing:.06em}.pause-button{background:#1a1f40d9;border:1px solid #7e8cff4d;border-radius:999px;color:var(--text-primary);cursor:pointer;font-weight:600;padding:.45rem .9rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.pause-button:hover{background:#20264ae6;border-color:#7e8cff8c;box-shadow:0 12px 26px #080c2452;transform:translateY(-1px)}.pause-button.paused{background:#2cb1bc29;border-color:#2cb1bc75;color:#d9f7ff}.sudoku-toast{align-items:center;background:#181c38eb;border:1px solid #7e8cff61;border-radius:999px;box-shadow:0 18px 32px #06081a52;color:var(--text-primary);display:inline-flex;font-size:.9rem;gap:.55rem;padding:.6rem 1.2rem}.sudoku-toast.success{background:#2cb1bc2e;border-color:#2cb1bc73;color:#d9f7ff}.sudoku-toast.info{background:#7e8cff29}.sudoku-toast.error{background:#ff8ba738;border-color:#ff8ba780;color:#ffe2ea}.status-dot{background:#7e8cffbf;border-radius:50%;box-shadow:0 0 12px currentColor;height:8px;width:8px}.sudoku-toast.success .status-dot{background:#2cb1bceb}.sudoku-toast.error .status-dot{background:#ff8ba7f2}.sudoku-action-button,.sudoku-board,.sudoku-board *,.sudoku-controls,.sudoku-difficulties,.sudoku-keypad-button,.sudoku-toggle,.timer{-webkit-user-select:none;user-select:none}.sudoku-board{grid-gap:0;background:radial-gradient(circle at top,#7f5af02e,#05060fd9);border:2px solid #7e8cff73;border-radius:18px;box-shadow:inset 0 0 0 1px #0c102099;display:grid;gap:0;grid-template-columns:repeat(9,52px);grid-template-rows:repeat(9,52px);overflow:hidden}.sudoku-cell{align-items:center;background:#0a0c19e6;border:1px solid #6e7ddc40;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;height:52px;justify-content:center;position:relative;width:52px}.sudoku-cell.given{background:#1b1e34f2;color:#e6e9fff5;font-weight:600}.sudoku-cell.selected{background:linear-gradient(140deg,#7f5af0eb,#2cb1bce6);box-shadow:inset 0 0 0 1px #ffffff4d;color:#0c1018}.sudoku-cell.highlight:not(.selected){background:#252d5699}.sudoku-cell:hover:not(.given):not(.selected){background:#48539659}.sudoku-cell .cell-value{font-size:1.35rem;font-weight:700}.candidates{color:#c8ccebb3;display:grid;font-size:.6rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);height:100%;pointer-events:none;width:100%}.candidate{align-items:center;display:flex;justify-content:center;visibility:hidden}.candidate.visible{visibility:visible}.left-thick{border-left-width:2px}.right-thick{border-right-width:2px}.top-thick{border-top-width:2px}.bottom-thick{border-bottom-width:2px}.sudoku-controls{align-items:stretch;display:flex;flex-direction:column;gap:1.25rem;width:100%}.sudoku-keypad{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(5,minmax(0,1fr));width:100%}.sudoku-keypad-button{background:#12162ceb;border:1px solid #7e8cff42;border-radius:16px;color:var(--text-primary);cursor:pointer;font-size:1.05rem;font-weight:600;padding:.75rem 0;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.sudoku-keypad-button:hover{background:#1a1f40f0;border-color:#7e8cff80;box-shadow:0 12px 24px #070a1c4d;transform:translateY(-1px)}.sudoku-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.generate-button,.modal-buttons button,.sudoku-action-button,.sudoku-difficulties button,.sudoku-toggle{background:#12162ce6;border:1px solid #7e8cff42;border-radius:14px;color:var(--text-primary);cursor:pointer;font-weight:600;min-width:56px;padding:.6rem 1.05rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.generate-button:hover,.modal-buttons button:hover,.sudoku-action-button:hover,.sudoku-difficulties button:hover,.sudoku-toggle:hover{background:#1a1f40f0;border-color:#7e8cff80;box-shadow:0 14px 26px #080a1e52;transform:translateY(-1px)}.generate-button:focus-visible,.modal-buttons button:focus-visible,.pause-button:focus-visible,.sudoku-action-button:focus-visible,.sudoku-difficulties button:focus-visible,.sudoku-keypad-button:focus-visible,.sudoku-toggle:focus-visible{outline:2px solid #7e8cffb3;outline-offset:3px}.sudoku-toggle{align-items:center;display:inline-flex;gap:.4rem}.sudoku-toggle.active{background:#2cb1bc2e;border-color:#2cb1bc73;color:#d9f7ff}.sudoku-controls-note{color:var(--text-muted);font-size:.85rem;margin:0;text-align:center}.sudoku-difficulties{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.25rem}.sudoku-start-card{padding:2rem 1.5rem 2.25rem;text-align:center}.sudoku-start-title{font-size:1.1rem;font-weight:600;margin:0}.sudoku-hints{display:flex;flex-direction:column;gap:1rem;max-width:900px;text-align:left;width:100%}.sudoku-hints-title{color:var(--text-secondary);font-size:1.1rem;font-weight:600;margin:0}.sudoku-hints-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.sudoku-hint-card{background:#121422b8;border:1px solid #7e8cff33;border-radius:18px;box-shadow:0 12px 24px #05061159;padding:1.1rem 1.2rem}.sudoku-hint-card h3{color:var(--text-primary);font-size:1rem;margin:0 0 .6rem}.sudoku-hint-card ul{grid-gap:.45rem;color:var(--text-muted);display:grid;font-size:.9rem;gap:.45rem;margin:0;padding-left:1.1rem}.generate-button,.sudoku-controls button,.sudoku-difficulties button,.sudoku-start{font-family:inherit}.sudoku-modal{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050611b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:50}.sudoku-modal .modal-content{background:var(--surface-strong);border:1px solid var(--surface-border-strong);border-radius:18px;box-shadow:var(--shadow-lift);color:var(--text-primary);padding:1.5rem;text-align:center;width:280px}.sudoku-modal input{background:#0c0e1ae6;border:1px solid #7e8cff47;border-radius:10px;color:var(--text-primary);margin:.75rem 0;padding:.5rem .75rem;width:100%}.modal-buttons{display:flex;gap:.75rem;justify-content:center;margin-top:.5rem}.sudoku-board.paused{filter:grayscale(.6) brightness(.85);pointer-events:none}.sudoku-board.paused .candidates,.sudoku-board.paused .cell-value{visibility:hidden}@media (max-width:768px){.sudoku-card{padding:1.25rem}.sudoku-board-card{padding:1rem}.sudoku-board{grid-template-columns:repeat(9,44px);grid-template-rows:repeat(9,44px)}.sudoku-cell,.sudoku-cell .cell-value{font-size:1.2rem}.sudoku-topline-inner{align-items:stretch;flex-direction:column}.sudoku-toast-slot,.sudoku-topline-left{justify-content:center}.timer{justify-content:space-between}.sudoku-keypad{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:520px){.sudoku-board{grid-template-columns:repeat(9,38px);grid-template-rows:repeat(9,38px)}.sudoku-card{padding:1rem}.timer{width:100%}.timer-value{font-size:1.6rem}.sudoku-toast-slot{min-height:72px}}.pattern-page{gap:2.5rem}.pattern-header{align-items:flex-start;display:flex;flex-direction:column;gap:.75rem;text-align:left}.pattern-subtitle{color:var(--text-secondary);font-size:1rem;margin:0;max-width:56ch}.pattern-card{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:22px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:1.5rem;padding:2rem}.pattern-card-heading{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.pattern-card-heading h2{font-size:1.35rem;margin:0}.pattern-card-subtitle{color:var(--text-secondary);font-size:.95rem;margin:.4rem 0 0;max-width:48ch}.pattern-chip{align-items:center;background:#7f5af029;border:1px solid #7f5af061;border-radius:999px;color:var(--text-primary);display:inline-flex;font-size:.82rem;font-weight:600;gap:.35rem;letter-spacing:.08em;padding:.4rem .85rem;white-space:nowrap}.pattern-chip--muted{background:#161828b8;border-color:#7f5af038;color:var(--text-secondary)}.pattern-chip-group{align-items:center;display:flex;gap:.6rem}.pp-textarea{background:#090b18d1;border:1px solid #7f5af040;border-radius:16px;box-sizing:border-box;color:var(--text-primary);font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:.95rem;line-height:1.6;min-height:140px;padding:1rem 1.15rem;resize:vertical;width:100%}.pp-textarea::placeholder{color:var(--text-muted)}.input-error{background:#5a162459!important;border-color:#ff6c85a6!important}.pattern-input-hint{color:var(--text-muted);font-size:.85rem}.pattern-error{color:#ff8ba7;font-weight:600;margin:0}.pattern-panels{grid-gap:1.75rem;align-items:flex-start;display:grid;gap:1.75rem;grid-template-columns:minmax(0,320px) minmax(0,1fr)}.pattern-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.pattern-stat{background:#0f1120d9;border:1px solid #7f5af02e;border-radius:16px;box-shadow:0 12px 28px #06081a59;display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem;text-align:left}.pattern-stat--full{grid-column:1/-1}.pattern-stat-label{color:var(--text-muted);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase}.pattern-stat-value{color:var(--text-primary);font-size:1.15rem;font-weight:600;word-break:break-word}.pattern-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.pattern-select{align-items:center;color:var(--text-secondary);display:inline-flex;font-size:.9rem;gap:.65rem}.pattern-select span{color:var(--text-muted);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.pattern-select select{min-width:130px}.pattern-paginate{align-items:center;background:#111321cc;border:1px solid #7f5af033;border-radius:999px;display:inline-flex;gap:.5rem;padding:.25rem .6rem}.pattern-paginate button{background:#0000;border:none;border-radius:999px;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:.2rem .35rem;transition:background .2s ease,color .2s ease}.pattern-paginate button:hover:not(:disabled){background:#7f5af033}.pattern-paginate button:disabled{color:var(--text-muted);cursor:not-allowed}.pattern-paginate input{background:#0000;border:none;color:var(--text-primary);font:inherit;text-align:center;width:3rem}.pattern-paginate input:focus{outline:none}.pattern-paginate-total{color:var(--text-muted);font-size:.8rem}.pp-results{display:flex;flex-direction:column;gap:.6rem;list-style:none;margin:0;max-height:60vh;overflow-y:auto;padding:0}.pp-results .result{background:#0d1020e0;border:1px solid #828cd233;border-radius:14px;cursor:pointer;line-height:1.5;padding:.75rem .95rem;transition:border-color .2s ease,background .2s ease,transform .15s ease;white-space:pre-wrap}.pp-results .result:hover{background:#14182ceb;border-color:var(--surface-border-strong);transform:translateY(-1px)}.pp-results .result:active{transform:translateY(0)}.pp-results .result--empty{border-style:dashed;color:var(--text-muted);cursor:default;text-align:center}.pp-tooltip{background:#0c0e1ceb;border:1px solid #7f5af040;border-radius:12px;box-shadow:0 12px 30px #080a1e73;font-size:.8rem;max-width:260px;padding:.6rem .75rem;pointer-events:none;z-index:1000}.pattern-toast,.pp-tooltip{color:var(--text-primary);position:fixed}.pattern-toast{background:linear-gradient(135deg,#7f5af0bf,#2cb1bcb3);border-radius:999px;bottom:24px;box-shadow:0 16px 36px #080a1c73;font-weight:600;letter-spacing:.08em;opacity:0;padding:.65rem 1.15rem;right:24px;text-transform:uppercase;transform:translateY(12px);transition:opacity .3s ease,transform .3s ease}.pattern-toast.show{opacity:1;transform:translateY(0)}@media (max-width:1000px){.pattern-panels{grid-template-columns:1fr}}@media (max-width:640px){.pattern-card{padding:1.75rem}.pattern-toolbar{align-items:stretch}.pattern-select{justify-content:space-between;width:100%}.pattern-paginate{justify-content:center;width:100%}}.maze-canvas{background:#000;border:2px solid #222;display:block;margin:1rem auto 0}.info-button{background:none;border:none;color:#05d9e8;cursor:pointer;font-size:1rem}.info-button:hover{color:#fff}.algorithm-info-overlay{align-items:center;background:#000c;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.algorithm-info-box{background-color:#111;border:2px solid #222;border-radius:8px;padding:1rem;text-align:center;width:260px}.algorithm-info-box canvas{border:1px solid #444;display:block;margin:.5rem auto}.search-dropdown{display:inline-block;position:relative}.search-dropdown-list{background:#222;border:1px solid #444;border-radius:6px;border-top:none;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:10}.search-dropdown-item{cursor:pointer;padding:.5rem .75rem}.search-dropdown-item:hover{background:#333}.search-input{width:300px}.search-dropdown-item.active{background:#444}.gbpi-config{display:flex;flex-direction:column;gap:1.75rem}.gbpi-config-header h2{font-size:1.45rem;letter-spacing:.01em;margin:0}.gbpi-config-subtext{color:var(--text-secondary);line-height:1.5;margin:.35rem 0 0;max-width:620px}.gbpi-pill-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.gbpi-pill-group{display:flex;flex-direction:column;gap:.65rem}.gbpi-pill-label{color:var(--text-secondary);font-weight:600;letter-spacing:.02em}.gbpi-pill-input{align-items:center;background:#0c0f20bf;border:1px solid #7e8cff3d;border-radius:14px;cursor:text;display:flex;flex-wrap:wrap;gap:.5rem;min-height:54px;padding:.65rem .75rem;transition:border-color .3s ease,box-shadow .3s ease}.gbpi-pill-input:focus-within{border-color:#7e8cff8c;box-shadow:0 14px 30px #4f5cdc47}.gbpi-pill-input input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font:inherit;min-width:140px;outline:none;padding:.25rem 0}.gbpi-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#7e8cff29;border:1px solid #7e8cff66;border-radius:999px;box-shadow:0 12px 24px #0c102859;color:var(--text-primary);gap:.35rem;letter-spacing:.02em;padding:.35rem .7rem}.gbpi-pill,.gbpi-pill-remove{align-items:center;display:inline-flex;font-size:.85rem}.gbpi-pill-remove{background:#0000;border:none;border-radius:50%;color:inherit;cursor:pointer;height:18px;justify-content:center;padding:0;transition:background .2s ease,color .2s ease;width:18px}.gbpi-pill-remove:focus-visible,.gbpi-pill-remove:hover{background:#fff3;color:#101325;outline:none}.gbpi-config-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.gbpi-defaults-button{border-radius:999px;font-weight:600;letter-spacing:.02em;padding:.6rem 1.35rem}.gbpi-defaults-button:hover{border-color:#7e8cff66;color:var(--text-primary)}.gbpi-table-wrapper{background:#0b0d1cd1;border:1px solid #7e8cff33;border-radius:18px;box-shadow:var(--shadow-soft);overflow-x:auto;padding:1.35rem}.gbpi-table{border-collapse:initial;border-spacing:0;min-width:480px;width:100%}.gbpi-table td,.gbpi-table th{padding:.75rem;text-align:center}.gbpi-table thead th{border-bottom:1px solid #7e8cff47;color:var(--text-secondary);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.gbpi-table tbody tr:nth-child(odd){background:#121528bf}.gbpi-table tbody tr:nth-child(2n){background:#10122299}.gbpi-table tbody tr td+td{border-left:1px solid #7e8cff29}.gbpi-table tbody tr+tr td{border-top:1px solid #7e8cff29}.gbpi-input{background:#0000;border:none;border-radius:10px;color:var(--text-primary);font:inherit;outline:none;padding:.45rem .25rem;text-align:center;transition:background .2s ease,box-shadow .2s ease;width:100%}.gbpi-input:focus{background:#ffffff14;box-shadow:0 0 0 2px #7e8cff59}@media (max-width:720px){.gbpi-pill-input input{min-width:100px}.gbpi-table{min-width:360px}}.twenty48-page{display:flex;flex-direction:column;gap:32px}.twenty48-layout{grid-gap:32px;align-items:flex-start;display:grid;gap:32px}@media (min-width:1080px){.twenty48-layout{grid-template-columns:minmax(0,1fr) 320px}}.twenty48-main{display:flex;flex-direction:column;gap:26px}.twenty48-scoreboard{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.twenty48-admin-tools{background:#0f1220e0;border:1px solid #7f5af047;border-radius:18px;box-shadow:0 22px 44px #080a1873;display:flex;flex-direction:column;gap:10px;padding:18px 20px}.twenty48-admin-actions{display:flex;flex-wrap:wrap;gap:10px}.twenty48-admin-button{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#735af0f2,#5ac8ffe6);border:none;border-radius:16px;box-shadow:0 16px 32px #3a5ac861;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:10px;justify-content:center;letter-spacing:.03em;padding:12px 20px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.twenty48-admin-button:not(:disabled):hover{box-shadow:0 20px 38px #3a5ac86b;transform:translateY(-1px)}.twenty48-admin-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.65;transform:none}.twenty48-admin-toggle{background:#1c203ee0;border:1px solid #7f5af05c;box-shadow:none;color:#d7dbf7e6}.twenty48-admin-toggle:not(.is-active):not(:disabled):hover{background:#242848eb;box-shadow:none}.twenty48-admin-toggle.is-active{background:linear-gradient(135deg,#735af0f2,#5ac8ffe6);box-shadow:0 16px 32px #3a5ac861;color:#fff}.twenty48-admin-toggle.is-active:not(:disabled):hover{box-shadow:0 20px 38px #3a5ac86b}.twenty48-admin-error,.twenty48-admin-hint,.twenty48-admin-result{color:#d7dbf7e0;font-size:.95rem;line-height:1.5}.twenty48-admin-error{color:#ff8aa7;font-weight:600}.twenty48-admin-result strong{color:#fff}.twenty48-score-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f1220e0;border:1px solid #7f5af038;border-radius:18px;box-shadow:0 22px 44px #080a1873;display:flex;flex-direction:column;gap:6px;padding:18px 20px;position:relative}.twenty48-card-label{color:#c7cae6c7;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.twenty48-score-card strong{color:var(--text-primary);font-size:clamp(1.6rem,3.6vw,2.3rem);font-weight:700}.twenty48-score-delta{color:var(--accent-pop);font-size:.9rem;font-weight:600;position:absolute;right:18px;top:14px}.twenty48-board-wrapper{display:flex;flex-direction:column;gap:20px}.twenty48-board{--tile-gap:14px;background:linear-gradient(145deg,#0a0d1ceb,#14182aeb);border:1px solid #7f5af03d;border-radius:26px;box-shadow:var(--shadow-lift);cursor:grab;outline:none;overscroll-behavior:contain;padding:24px;position:relative;touch-action:none;user-select:none;-webkit-user-select:none}.twenty48-board:focus{border-color:#7f5af099;box-shadow:0 0 0 3px #7f5af04d,var(--shadow-lift)}.twenty48-board:active{cursor:grabbing}.twenty48-board-inner{--tile-size:calc((100% - var(--tile-gap)*(var(--grid-size) - 1))/var(--grid-size));padding-bottom:100%;position:relative;width:100%}.twenty48-cell-grid{grid-gap:var(--tile-gap);display:grid;gap:var(--tile-gap);grid-template-columns:repeat(var(--grid-size),1fr);grid-template-rows:repeat(var(--grid-size),1fr);inset:0;pointer-events:none;position:absolute}.twenty48-cell{background:#191e34bf;border:1px solid #7e8cff24;border-radius:18px;box-shadow:inset 0 2px 0 #ffffff0a}.twenty48-tile-layer{inset:0}.twenty48-tile,.twenty48-tile-layer{pointer-events:none;position:absolute}.twenty48-tile{align-items:center;border-radius:18px;box-shadow:0 20px 36px #05061185;color:#f7f8ff;display:flex;font-size:clamp(1.35rem,4.2vw,2.4rem);font-weight:700;height:var(--tile-size);justify-content:center;left:calc(var(--col)*(var(--tile-size) + var(--tile-gap)));text-shadow:0 4px 16px #05061173;top:calc(var(--row)*(var(--tile-size) + var(--tile-gap)));transform:scale(1);transition:top .2s cubic-bezier(.22,.61,.36,1),left .2s cubic-bezier(.22,.61,.36,1),transform .18s ease,background .2s ease,box-shadow .22s ease,color .2s ease;user-select:none;-webkit-user-select:none;width:var(--tile-size)}.twenty48-tile span{pointer-events:none;transform:translateY(-1px)}.twenty48-tile:after{background:#fff3;border-radius:inherit;content:"";filter:blur(0);inset:14%;opacity:0;pointer-events:none;position:absolute;transform:scale(.8)}.twenty48-tile.is-new{animation:twenty48-pop .16s ease-out;z-index:3}.twenty48-tile.is-merged{animation:twenty48-merge .22s ease-out;z-index:2}.twenty48-tile.is-moving{animation:twenty48-glide .22s ease-out;box-shadow:0 24px 44px #1e244ba6;z-index:2}.twenty48-tile.is-moving:after{animation:twenty48-trail .22s ease-out}.twenty48-tile.is-epic{box-shadow:0 24px 44px #ff8ba773}.twenty48-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080a18b8;display:flex;inset:0;justify-content:center;padding:24px;position:absolute;user-select:text;-webkit-user-select:text;z-index:5}.twenty48-overlay-card{background:#0c101ef2;border:1px solid #7f5af04d;border-radius:20px;box-shadow:0 30px 60px #080a1880;display:flex;flex-direction:column;gap:16px;max-width:360px;padding:28px;width:100%}.twenty48-overlay-card h2{font-size:1.8rem;margin:0}.twenty48-overlay-card p{color:#c7cae6d9;line-height:1.55;margin:0}.twenty48-overlay-eyebrow{color:#7f5af0cc;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase}.twenty48-overlay-actions{display:flex;flex-direction:column;gap:12px}.twenty48-overlay-actions .ghost-button,.twenty48-overlay-actions .primary-button{width:100%}.twenty48-overlay-form{display:flex;flex-direction:column;gap:10px;padding-top:8px}.twenty48-overlay-label{color:#c7cae6c7;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase}.twenty48-overlay-form input{background:#121626f2;border:1px solid #7f5af059;border-radius:12px;color:var(--text-primary);font:inherit;font-size:.95rem;outline:none;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.twenty48-overlay-form input:focus{border-color:#a38fffd9;box-shadow:0 0 0 3px #7f5af03d}.twenty48-overlay-form input:disabled{cursor:not-allowed;opacity:.7}.twenty48-overlay-helper{color:#c7cae6b3;font-size:.8rem}.twenty48-overlay-error{color:#ff8ba7;font-size:.82rem;font-weight:500}.twenty48-overlay-success{background:#25c5bd1f;border:1px solid #25c5bd52;border-radius:12px;color:#d4fffbeb;font-size:.9rem;line-height:1.55;padding:12px 14px}.twenty48-overlay-form-actions{display:flex;flex-direction:column;gap:10px;margin-top:4px}.twenty48-overlay-reopen{align-self:flex-start;background:none;border:none;color:#a38ffff2;cursor:pointer;font-size:.92rem;font-weight:600;padding:0;text-decoration:underline}.twenty48-overlay-reopen:focus,.twenty48-overlay-reopen:hover{color:#c8b6ff}@keyframes twenty48-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes twenty48-merge{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes twenty48-glide{0%{transform:scale(.92)}55%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes twenty48-trail{0%{filter:blur(4px);opacity:.32;transform:scale(.78)}50%{filter:blur(8px);opacity:.18;transform:scale(1.05)}to{filter:blur(14px);opacity:0;transform:scale(1.28)}}.twenty48-tile[data-value="2"]{background:linear-gradient(145deg,#6cf0ff,#1b8dff);color:#042137}.twenty48-tile[data-value="4"]{background:linear-gradient(145deg,#82ff9e,#1dd3a7);color:#05322a}.twenty48-tile[data-value="8"]{background:linear-gradient(145deg,#ffe66d,#ff9f1c);color:#3b2400}.twenty48-tile[data-value="16"]{background:linear-gradient(145deg,#ff9acd,#ff3d9a)}.twenty48-tile[data-value="32"]{background:linear-gradient(145deg,#c084fc,#6b21ff)}.twenty48-tile[data-value="64"]{background:linear-gradient(145deg,#66a6ff,#1e3fff)}.twenty48-tile[data-value="128"]{background:linear-gradient(145deg,#ff7d7d,#ff3a3a)}.twenty48-tile[data-value="256"]{background:linear-gradient(145deg,#ff79f2,#b43cfd)}.twenty48-tile[data-value="512"]{background:linear-gradient(145deg,#7ef7cf,#1cc29f)}.twenty48-tile[data-value="1024"]{background:linear-gradient(145deg,#ff9567,#ff5d0a)}.twenty48-tile[data-value="2048"]{background:linear-gradient(145deg,#ffe45e,#ff4f5a)}.twenty48-tile[data-value="16384"],.twenty48-tile[data-value="32768"],.twenty48-tile[data-value="4096"],.twenty48-tile[data-value="65536"],.twenty48-tile[data-value="8192"]{background:linear-gradient(145deg,#ff64b4,#ff2451)}.twenty48-subtle{color:#c7cae6c7;font-size:.95rem;line-height:1.6;margin:0}.twenty48-status{background:#121422c7;border:1px solid #7f5af02e;border-radius:16px;box-shadow:0 14px 28px #080a1866;color:var(--text-primary);font-size:.95rem;padding:14px 18px}.twenty48-action-buttons{display:flex;flex-wrap:wrap;gap:12px}.twenty48-action-buttons .primary-button{flex:1 1 160px}.twenty48-sidebar{gap:22px}.twenty48-panel,.twenty48-sidebar{display:flex;flex-direction:column}.twenty48-panel{background:#0f1220d6;border:1px solid #7f5af033;border-radius:20px;box-shadow:var(--shadow-soft);gap:12px;padding:22px 24px}.twenty48-panel.twenty48-leaderboard{gap:16px}.twenty48-panel h2{font-size:1.15rem;margin:0}.twenty48-leaderboard-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.twenty48-refresh-button{background:#181c34d9;border:1px solid #7f5af061;border-radius:14px;color:#c7cae6e6;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 14px;transition:background .16s ease,border-color .16s ease,transform .14s ease}.twenty48-refresh-button:not(:disabled):hover{background:#242844f2;border-color:#a38fff99;transform:translateY(-1px)}.twenty48-refresh-button:disabled{cursor:not-allowed;opacity:.6}.twenty48-leaderboard-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.twenty48-leaderboard-item{grid-gap:14px;align-items:center;background:#15182ae6;border:1px solid #7f5af02e;border-radius:16px;box-shadow:inset 0 1px 0 #ffffff0a;display:grid;gap:14px;grid-template-columns:42px 1fr;padding:14px 16px}.twenty48-leaderboard-item.is-empty{color:#c7cae6b3;font-size:.9rem;justify-content:center;text-align:center}.twenty48-leaderboard-item.is-highlighted{background:#2d2258e6;border-color:#a38fff8c;box-shadow:0 18px 36px #201a446b}.twenty48-leaderboard-rank{align-items:center;background:#7f5af03d;border-radius:50%;color:#d4d0fff2;display:inline-flex;font-weight:700;height:32px;justify-content:center;width:32px}.twenty48-leaderboard-details{display:flex;flex-direction:column;gap:4px;min-width:0}.twenty48-leaderboard-name{color:var(--text-primary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.twenty48-leaderboard-score{color:#ffffffeb;font-size:1.1rem;font-weight:700}.twenty48-leaderboard-subtext{color:#c7cae6b3;font-size:.78rem}.twenty48-leaderboard-error{background:#ff8da71f;border:1px solid #ff8da759;border-radius:16px;color:#ffd6e0eb;display:flex;flex-direction:column;font-size:.92rem;gap:10px;padding:14px 16px}.twenty48-leaderboard-note{color:#c7cae6a6;font-size:.8rem;margin:8px 0 0}.twenty48-instruction-list,.twenty48-tip-list{color:#c7cae6db;display:flex;flex-direction:column;gap:.65rem;margin:0;padding-left:1.1rem}.twenty48-keyboard-grid{color:#c7cae6db;display:flex;flex-direction:column;gap:10px}.twenty48-keycap{align-items:center;background:#7f5af02e;border:1px solid #7f5af073;border-radius:8px;color:var(--text-primary);display:inline-flex;font-size:.72rem;justify-content:center;letter-spacing:.08em;margin-right:.35rem;padding:.25rem .55rem;text-transform:uppercase}.twenty48-key-text{font-size:.85rem}.twenty48-tip{color:#c7cae6cc;font-size:.9rem;line-height:1.5;margin:0}@media (max-width:1024px){.twenty48-layout{grid-template-columns:minmax(0,1fr)}.twenty48-sidebar{order:-1}}@media (max-width:640px){.twenty48-board{padding:18px}.twenty48-board-inner{--tile-size:calc((100% - var(--tile-gap)*(var(--grid-size) - 1))/var(--grid-size))}.twenty48-control-pad{gap:10px;grid-template-columns:repeat(3,60px);grid-template-rows:repeat(3,60px)}.twenty48-control-button{font-size:1.2rem}}.fh-input{background:#222;border:1px solid #444;border-radius:6px;color:#f2f2f2;margin-bottom:.5rem;padding:.5rem .75rem}.fh-start{text-align:center}.fh-start-inputs{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1rem}.fh-game{text-align:center}.fh-form{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1rem}.fh-step-buttons{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem;width:100%}.fh-round-section{margin-top:1rem;text-align:left}.fh-scores{align-items:center;display:flex;flex-direction:column;gap:.75rem}.fh-inner-section{background:#191919;border:1px solid #333;border-radius:8px;margin-bottom:1rem;padding:1rem;width:100%}.fh-team-score{align-items:center;background:#222;border-radius:8px;display:flex;flex-direction:column;padding:.5rem 1rem}.fh-team-name{color:#ccc;font-size:.9rem;margin-bottom:.25rem}.fh-score{font-size:1.5rem;font-weight:700}.fh-vs{align-self:center;font-weight:700;margin:0 .5rem}.fh-scoreboard{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.fh-score-helper{color:#a9a9a9;font-size:.85rem;margin-top:.75rem}.fh-bottom{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.fh-chart,.fh-history{flex:1 1;min-width:260px}.fh-section-title{font-size:1.1rem;margin-bottom:.5rem;text-align:left}.fh-chart-canvas{height:280px}.fh-step-indicator{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.fh-step{align-items:flex-start;background:#151515;border:1px solid #242424;border-radius:10px;display:flex;gap:.75rem;padding:.75rem;transition:border-color .2s ease,background .2s ease}.fh-step.is-active{background:#5ab0ff14;border-color:#5ab0ff}.fh-step.is-complete{background:#4caf501a;border-color:#4caf50}.fh-step-number{align-items:center;background:#222;border-radius:50%;display:flex;font-weight:600;height:2rem;justify-content:center;width:2rem}.fh-step-title{font-weight:600;margin-bottom:.25rem}.fh-step-description{color:#a0a0a0;font-size:.85rem}.fh-field{display:flex;flex-direction:column;min-width:160px;text-align:left}.fh-field label{color:#9aa0ac;font-size:.75rem;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.fh-field select{background:#151515;border:1px solid #2b2b2b;border-radius:8px;color:#f0f0f0;font-size:.95rem;padding:.6rem .75rem}.fh-field select:focus{border-color:#5ab0ff;box-shadow:0 0 0 2px #5ab0ff40;outline:none}.fh-checkbox{align-self:flex-start;margin-top:.5rem}.fh-checkbox span{font-weight:500}.fh-history-helper{color:#9e9e9e;font-size:.85rem;margin-bottom:.75rem}.fh-round-carousel{grid-gap:1rem;display:grid;gap:1rem;grid-auto-columns:min(100%,320px);grid-auto-flow:column;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;scrollbar-width:thin}.fh-round-carousel::-webkit-scrollbar{height:6px}.fh-round-carousel::-webkit-scrollbar-thumb{background:#2f2f2f;border-radius:3px}.fh-round-card{background:#111;border:1px solid #252525;border-radius:12px;display:flex;flex-direction:column;gap:.75rem;opacity:.65;padding:1.25rem;scroll-snap-align:center;transform:scale(.96);transition:opacity .25s ease,transform .25s ease,border-color .25s ease,box-shadow .25s ease}.fh-round-card.is-active{border-color:#5ab0ff;box-shadow:0 12px 30px #00000059;opacity:1;transform:scale(1)}.fh-round-header{align-items:center;color:#b5b5b5;display:flex;font-size:.9rem;justify-content:space-between}.fh-round-result{border-radius:999px;font-size:.75rem;letter-spacing:.08em;padding:.25rem .5rem;text-transform:uppercase}.fh-round-result.is-made{background:#4caf501a;color:#9dffb4}.fh-round-result.is-down{background:#ff63841a;color:#ff8d9e}.fh-round-bid{align-items:flex-start;display:flex;flex-direction:column;gap:.35rem;text-align:left}.fh-round-team{color:#9fa6b2;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.fh-round-contract{font-size:1.1rem;font-weight:600}.fh-round-body{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.fh-round-score{background:#161616;border-radius:10px;display:flex;flex-direction:column;gap:.25rem;padding:.75rem;text-align:left}.fh-round-label{color:#9fa6b2;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.fh-round-score strong{font-size:1.4rem}.fh-round-delta{font-size:.85rem;font-weight:600}.fh-round-delta.is-positive{color:#81c784}.fh-round-delta.is-negative{color:#ff6b81}.fh-round-note{color:#d4b48f;font-size:.85rem;margin-top:.5rem;text-align:left}.fh-round-nav{display:flex;gap:.75rem;justify-content:space-between;margin-top:.75rem}.fh-empty-state{text-align:center}.fh-empty-state p{color:#a7a7a7;margin-top:.5rem}@media (min-width:768px){.fh-inner-section{border-radius:12px;padding:1.5rem}.fh-round-carousel{grid-auto-columns:min(420px,100%)}.fh-round-body{gap:1.25rem}}@media (max-width:600px){.fh-step-indicator{gap:.5rem}.fh-step{flex-direction:row;padding:.6rem}.fh-step-number{height:1.8rem;width:1.8rem}.fh-round-body{grid-template-columns:1fr}}.typing-test-page{gap:2.5rem;padding:3rem 1.5rem 4rem}.typing-test-card{background:#0f101bd1;border:1px solid #7e8cff33;border-radius:28px;box-shadow:0 30px 80px #080a1873;display:flex;flex-direction:column;gap:2.25rem;padding:2.5rem clamp(1.5rem,4vw,3rem)}.typing-test-body{display:flex;flex-direction:column;gap:1.75rem}.typing-test-text{background:#141623b8;border:1px solid #7e8cff26;border-radius:18px;counter-reset:char;display:flex;flex-wrap:wrap;font-family:Fira Code,JetBrains Mono,Menlo,monospace;font-size:1.2rem;gap:.1rem .22rem;line-height:1.8;min-height:140px;padding:clamp(1.25rem,3vw,2rem);position:relative}.typing-char{border-radius:6px;color:#d4daffad;padding:.1rem .08rem;position:relative;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.typing-char.correct{color:var(--text-primary)}.typing-char.incorrect{background:#ff8b9c1f;box-shadow:0 6px 18px #ff8b9c2e;color:#ff8b9c}.typing-char.active{background:linear-gradient(135deg,#7384ff59,#56f4ff59);box-shadow:0 8px 24px #5a8fff59;color:var(--text-primary)}.typing-input-label{color:var(--text-secondary);font-weight:600;letter-spacing:.04em}.typing-test-input{background:#0c0e1ae6;border:1px solid #7e8cff3d;border-radius:18px;box-shadow:inset 0 12px 22px #05061080;color:var(--text-primary);font-family:Inter,Segoe UI,sans-serif;font-size:1.05rem;line-height:1.6;min-height:140px;padding:1rem 1.1rem;resize:none;width:100%}.typing-stats{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.typing-stat{background:#151827c7;border:1px solid #7e8cff2e;border-radius:20px;box-shadow:0 24px 38px #080b1c59;display:flex;flex-direction:column;gap:.35rem;padding:1.25rem 1.4rem}.typing-stat dt{color:var(--text-muted);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase}.typing-stat dd{color:var(--text-primary);font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;margin:0}.typing-footer{align-items:center;display:flex;flex-wrap:wrap;gap:1rem 1.75rem;justify-content:space-between}.typing-footer-summary{color:var(--text-secondary);display:flex;flex-direction:column;font-size:.95rem;gap:.2rem}.typing-tips{grid-gap:clamp(1.5rem,4vw,3rem);background:#0e0f1ab8;border:1px solid #7e8cff29;border-radius:26px;box-shadow:0 22px 48px #07091761;display:grid;gap:clamp(1.5rem,4vw,3rem);grid-template-columns:minmax(0,360px) minmax(0,1fr);padding:clamp(1.8rem,4vw,2.6rem)}.typing-tip-list{grid-gap:.8rem;color:var(--text-secondary);display:grid;gap:.8rem;line-height:1.6;margin:0;padding-left:1.2rem}.typing-tip-list strong{color:var(--text-primary);font-weight:600}.typing-results{display:flex;justify-content:center}.typing-results-card{background:linear-gradient(135deg,#525eff52,#56f4ff47);border:1px solid #7e8cff4d;border-radius:22px;box-shadow:0 26px 70px #090c2066;color:var(--text-primary);max-width:540px;padding:1.9rem 2.1rem;text-align:center}.typing-results-card h3{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;margin:0 0 .5rem}.typing-results-card p{color:#f5f8ffeb;line-height:1.7;margin:0}@media (max-width:900px){.typing-tips{grid-template-columns:1fr}}@media (max-width:640px){.typing-test-card{padding:2rem 1.5rem}.typing-test-text{font-size:1.05rem}.typing-test-input{min-height:120px}.typing-footer{align-items:flex-start;flex-direction:column}}.admin-page{gap:2.5rem;text-align:left}.admin-header,.admin-page{display:flex;flex-direction:column}.admin-header{align-items:flex-start;gap:.75rem}.admin-title{display:block!important;margin:0}.admin-description{color:var(--text-secondary);font-size:.95rem;line-height:1.65;margin:0;max-width:560px}.admin-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.85rem}.admin-role-filter,.admin-search{background:#121422d9;border:1px solid #7e8cff40;border-radius:12px;color:var(--text-primary);font:inherit;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.admin-search{flex:1 1 280px;max-width:420px;min-width:240px;padding:.65rem 1rem}.admin-search::placeholder{color:var(--text-muted)}.admin-search:focus{background:#16192cf2;border-color:var(--surface-border-strong);box-shadow:0 0 0 3px #7f5af02e;outline:none}.admin-role-filter{appearance:none;flex:0 1 200px;min-width:180px;padding:.65rem .9rem}.admin-role-filter:focus{background:#16192cf2;border-color:var(--surface-border-strong);box-shadow:0 0 0 3px #7f5af02e;outline:none}.admin-results-row{align-items:center;display:flex;justify-content:space-between}.admin-results-meta{color:var(--text-secondary);font-size:.9rem;margin:0}.admin-results-meta strong{color:var(--text-primary);font-weight:600}.admin-error{color:#ff8b8b;margin:0}.admin-users-area{display:flex;flex-direction:column;gap:1.25rem}.admin-empty-state,.admin-loading{background:#0d0f1c94;border:1px solid #828cd238;border-radius:16px;color:var(--text-secondary);margin:0;padding:1.75rem 1.5rem;text-align:center}.admin-empty-state--error{background:#3c121c8c;border-color:#ff8b8b66;color:#ffb8b8}.admin-users-grid{grid-gap:1.2rem;align-items:stretch;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.admin-user-card{background:linear-gradient(155deg,#111321eb,#1c2038c7);border:1px solid #ffffff14;border-radius:18px;cursor:pointer;display:flex;flex-direction:column;gap:.95rem;padding:1.2rem 1.3rem;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.admin-user-card:focus-visible,.admin-user-card:hover{border-color:#ffffff2e;box-shadow:var(--shadow-lift);transform:translateY(-4px)}.admin-user-card:focus-visible{outline:none}.admin-user-card-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.admin-user-name{color:var(--text-primary);font-size:1.05rem;font-weight:600;margin:0}.admin-user-email{color:var(--text-muted);font-size:.85rem;margin:.2rem 0 0;word-break:break-word}.admin-user-chevron{color:var(--text-muted);font-size:1.2rem;transition:transform .2s ease,color .2s ease}.admin-user-card:focus-visible .admin-user-chevron,.admin-user-card:hover .admin-user-chevron{color:var(--text-primary);transform:translateX(4px)}.admin-user-roles{display:flex;flex-wrap:wrap;gap:.45rem}.admin-role-chip{background:#8195ff29;border:1px solid #8195ff4d;border-radius:999px;color:#dce0ff;font-size:.7rem;letter-spacing:.16em;padding:.3rem .6rem;text-transform:uppercase}.admin-role-chip--empty{background:#ffffff0d;border:1px dashed #ffffff2e;color:var(--text-secondary);letter-spacing:.12em}.admin-user-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050713b8;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:1000}.admin-user-modal{background:linear-gradient(160deg,#121424f5,#202540e6);border:1px solid #ffffff1f;border-radius:20px;box-shadow:0 24px 48px #0608188c;display:flex;flex-direction:column;gap:1.8rem;max-height:90vh;overflow-y:auto;padding:2rem 2.25rem;position:relative;width:min(640px,100%)}.admin-modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.6rem;line-height:1;position:absolute;right:1rem;top:.85rem;transition:color .2s ease}.admin-modal-close:focus-visible,.admin-modal-close:hover{color:var(--text-primary);outline:none}.admin-modal-header{display:flex;flex-direction:column;gap:.35rem}.admin-modal-header h2{font-size:1.35rem;margin:0}.admin-modal-subtitle{color:var(--text-secondary);font-size:.9rem;margin:0;word-break:break-word}.admin-modal-section{display:flex;flex-direction:column;gap:.85rem}.admin-modal-section h3{color:var(--text-muted);font-size:.9rem;letter-spacing:.12em;margin:0;text-transform:uppercase}.admin-modal-roles{grid-gap:.6rem;display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.admin-role-toggle{align-items:center;background:#171a2ed9;border:1px solid #8195ff38;border-radius:12px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.85rem;gap:.55rem;padding:.55rem .75rem;transition:border-color .2s ease,background .2s ease}.admin-role-toggle:focus-within,.admin-role-toggle:hover{background:#242844f2;border-color:#8195ff73}.admin-role-toggle input{accent-color:var(--accent-end)}.admin-modal-empty{color:var(--text-secondary);font-size:.9rem;margin:0}.admin-activity-list{display:flex;flex-direction:column;gap:.65rem;list-style:none;margin:0;padding:0}.admin-activity-item{background:#171a2ebf;border:1px solid #8195ff29;border-radius:12px;display:flex;flex-direction:column;gap:.25rem;padding:.75rem .85rem}.admin-activity-action{color:var(--text-primary);font-size:.92rem;line-height:1.4}.admin-activity-timestamp{color:var(--text-muted);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}@media (max-width:720px){.admin-controls{align-items:stretch;flex-direction:column}.admin-role-filter,.admin-search{max-width:none;width:100%}.admin-user-modal{padding:1.75rem 1.5rem}}.tag-input{position:relative;width:100%}.tag-input-tags{background-color:#222;border:1px solid #444;border-radius:4px;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center;padding:.4rem}.tag-input-tags input{background:none;border:none;color:#fff;flex:1 1;min-width:120px;outline:none;padding:.2rem}.tag-input-tag{align-items:center;background-color:#333;border-radius:12px;display:flex;padding:.2rem .5rem}.tag-input-tag button{background:none;border:none;color:#fff;cursor:pointer;margin-left:.25rem}.tag-input-dropdown{background:#222;border:1px solid #444;border-radius:0 0 4px 4px;border-top:none;left:0;max-height:150px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:10}.tag-input-option{cursor:pointer;padding:.4rem .5rem}.tag-input-option:hover{background:#333}:root{--bg-gradient:radial-gradient(120% 120% at 10% 10%,#7f5af03d 0%,#14162400 55%),radial-gradient(120% 120% at 90% 0%,#2cb1bc47 0%,#14162400 60%),#05060f;--surface-color:#121422c7;--surface-strong:#1e2134d9;--surface-border:#7886ff2e;--surface-border-strong:#7f5af052;--text-primary:#f5f7ff;--text-secondary:#c7cae6;--text-muted:#c7cae6c7;--accent-start:#7f5af0;--accent-end:#2cb1bc;--accent-pop:#ff8ba7;--shadow-soft:0 18px 40px #05061173;--shadow-lift:0 22px 50px #0a0c1e99}*,:after,:before{box-sizing:border-box}body,html{margin:0;min-height:100%;padding:0}body{background:radial-gradient(120% 120% at 10% 10%,#7f5af03d 0,#14162400 55%),radial-gradient(120% 120% at 90% 0,#2cb1bc47 0,#14162400 60%),#05060f;background:var(--bg-gradient);color:#f5f7ff;color:var(--text-primary);font-family:Inter,Segoe UI,Roboto,sans-serif;line-height:1.6;min-height:100vh;overflow-x:hidden;position:relative}a{color:inherit}img{display:block;max-width:100%}.centered-container input:not([type=checkbox]):not([type=radio]),.centered-container select,.centered-container textarea,.page-container input:not([type=checkbox]):not([type=radio]),.page-container select,.page-container textarea{background:#121422d9;border:1px solid #7e8cff38;border-radius:10px;color:#f5f7ff;color:var(--text-primary);font-family:inherit;padding:.55rem .8rem;transition:border-color .2s ease,box-shadow .2s ease}.centered-container input:not([type=checkbox]):not([type=radio]):focus,.centered-container select:focus,.centered-container textarea:focus,.page-container input:not([type=checkbox]):not([type=radio]):focus,.page-container select:focus,.page-container textarea:focus{border-color:#7f5af052;border-color:var(--surface-border-strong);box-shadow:0 0 0 3px #7f5af02e;outline:none}.app-shell{display:flex;flex-direction:column;min-height:100vh;position:relative;z-index:1}.app-main{flex:1 1;padding:3.25rem 0 5rem}.app-main,.page-container{display:flex;flex-direction:column}.page-container{gap:3rem;margin:0 auto;max-width:1100px;padding:0 1.5rem;width:100%}.centered-container{box-sizing:border-box;margin:0 auto;max-width:960px;padding:1.75rem 1.5rem 3rem;text-align:center;width:100%}.navbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c0d17b8;border-bottom:1px solid #7e8cff29;box-shadow:0 12px 30px #05061159;padding:.75rem 0;position:sticky;top:0;width:100%;z-index:15}.navbar-inner{gap:2rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 1.5rem;width:100%}.navbar-brand,.navbar-inner{align-items:center;display:flex}.navbar-brand{color:inherit;gap:.85rem;text-decoration:none}.navbar-logo{border-radius:12px;box-shadow:0 10px 18px #10121e66;height:44px;object-fit:contain;width:44px}.navbar-title{display:flex;flex-direction:column;gap:.1rem}.navbar-name{font-size:1rem;font-weight:700;letter-spacing:.03em}.navbar-tagline{color:#c7cae6c7;color:var(--text-muted);font-size:.68rem;letter-spacing:.24em;text-transform:uppercase}.nav-links{align-items:center;display:flex;flex-wrap:wrap;gap:1.1rem;margin-left:auto}.nav-button,.nav-item{align-items:center;background:none;border:none;color:#c7cae6c7;color:var(--text-muted);cursor:pointer;display:inline-flex;font-weight:500;font:inherit;justify-content:center;padding:.45rem .75rem;position:relative;text-decoration:none;transition:color .3s ease}.nav-item{border-radius:999px;gap:.35rem;isolation:isolate;padding:.45rem 1rem;transition:color .3s ease}.nav-item:before{border-radius:inherit;inset:0;opacity:0;transform:scaleX(.35) scaleY(.35);transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s ease;z-index:-1}.nav-item:after,.nav-item:before{background:linear-gradient(120deg,#7f5af0,#2cb1bc);background:linear-gradient(120deg,var(--accent-start),var(--accent-end));content:"";position:absolute}.nav-item:after{border-radius:999px;bottom:6px;height:2px;left:16%;opacity:.65;right:16%;transform:scaleX(.6);transition:transform .3s ease,opacity .3s ease}.nav-item:hover{color:#f5f7ff;color:var(--text-primary)}.nav-item:hover:before{opacity:.95;transform:scaleX(1) scaleY(1)}.nav-item:hover:after{opacity:0;transform:scaleX(.25)}.no-underline:after,.no-underline:before{display:none}.active{color:#f5f7ff;color:var(--text-primary)}.active:before{opacity:.95;transform:scaleX(1) scaleY(1)}.active:after{opacity:0;transform:scaleX(.25)}@media (max-width:768px){.navbar-inner{padding:0 1.125rem}.nav-links{gap:.85rem}}.large-header{font-size:clamp(2.6rem,6vw,3.6rem);font-weight:800;margin:0 0 1.75rem}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(100deg,#7f5af0,#2cb1bc);background:linear-gradient(100deg,var(--accent-start),var(--accent-end));-webkit-background-clip:text;color:#0000;display:inline-block}.subtext{color:#c7cae6;color:var(--text-secondary);font-size:1.05rem;font-weight:400;line-height:1.7;margin:0 auto 2rem;max-width:600px;text-align:center}.page-eyebrow,.section-eyebrow{align-items:center;color:#c7cae6c7;color:var(--text-muted);display:inline-flex;font-size:.75rem;font-weight:600;gap:.4rem;letter-spacing:.28em;text-transform:uppercase}.section-heading h2{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;margin:.75rem 0}.hero-description,.page-description,.section-heading p{color:#c7cae6;color:var(--text-secondary);margin:0;max-width:60ch}.hero-section{grid-gap:2rem;align-items:stretch;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.hero-text{display:flex;flex-direction:column;gap:1.5rem}.hero-description{font-size:1.1rem}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.generate-button,.ghost-button,.gradient-button,.primary-button{align-items:center;border-radius:999px;display:inline-flex;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:.02em;padding:.75rem 1.75rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.generate-button,.gradient-button,.primary-button{background:linear-gradient(120deg,#7f5af0,#2cb1bc);background:linear-gradient(120deg,var(--accent-start),var(--accent-end));border:none;box-shadow:0 12px 25px #4f5cdc66;color:#fff;cursor:pointer}.generate-button:hover,.gradient-button:hover,.primary-button:hover{box-shadow:0 16px 32px #4f5cdc73;transform:translateY(-2px)}.ghost-button{background:#ffffff0a;border:1px solid #ffffff24;color:#c7cae6;color:var(--text-secondary)}.ghost-button:hover{opacity:.95;transform:translateY(-1px)}.hero-highlight-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.hero-highlight{background:#121422c7;background:var(--surface-color);border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 10px 24px #080a1959;padding:1rem 1.2rem}.hero-highlight-title{color:#2cb1bc;color:var(--accent-end);font-size:.95rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.hero-highlight-copy{color:#c7cae6;color:var(--text-secondary);font-size:.95rem;margin:.35rem 0 0}.hero-card{background:#1e2134d9;background:var(--surface-strong);border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:22px;box-shadow:0 18px 40px #05061173;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:1.25rem;min-height:100%;padding:2rem}.hero-card-title{font-size:1.5rem;margin:0}.hero-card-list{color:#c7cae6;color:var(--text-secondary);display:flex;flex-direction:column;gap:.6rem;margin:0;padding-left:1.1rem}.hero-card-button{align-self:flex-start}.glass-section{background:#121422c7;background:var(--surface-color);border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:22px;box-shadow:0 18px 40px #05061173;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:1.75rem;padding:2.4rem}.section-footer{display:flex;justify-content:center}.tool-preview{background:linear-gradient(135deg,#1a1c2eeb,#1e2236c7);border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:20px;box-shadow:0 16px 30px #06081866;display:flex;flex-direction:column;gap:.9rem;padding:1.5rem;text-align:left;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.tool-preview:hover{border-color:#7f5af052;border-color:var(--surface-border-strong);box-shadow:0 22px 50px #0a0c1e99;box-shadow:var(--shadow-lift);transform:translateY(-6px)}.tool-preview-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.tool-preview-roles{align-items:center;display:flex;gap:.4rem}.tool-preview-title{font-size:1.2rem;font-weight:700;margin:0}.tool-preview-desc{color:#c7cae6;color:var(--text-secondary);font-size:1rem;line-height:1.5;margin:0}.tool-access-pill{background:#7f5af026;border:1px solid #7f5af059;border-radius:999px;color:#7f5af0;color:var(--accent-start);font-size:.65rem;letter-spacing:.18em;padding:.28rem .65rem;text-transform:uppercase;white-space:nowrap}.tool-preview-link{color:#f5f7ff;color:var(--text-primary);font-size:.9rem;font-weight:600;opacity:.85;transition:opacity .2s ease}.tool-preview:hover .tool-preview-link{opacity:1}.tools-grid{grid-gap:1.75rem;display:grid;gap:1.75rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.page-header,.section-heading{display:flex;flex-direction:column;gap:.75rem;text-align:left}.tools-page{gap:2.5rem}.tools-filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:-.5rem}.tools-filter-chip{align-items:center;background:#121422b3;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:999px;color:#c7cae6c7;color:var(--text-muted);cursor:pointer;display:inline-flex;font:inherit;gap:.45rem;padding:.5rem .95rem;transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.tools-filter-chip:hover{border-color:#7f5af052;border-color:var(--surface-border-strong);color:#f5f7ff;color:var(--text-primary)}.tools-filter-chip:focus-visible{box-shadow:0 0 0 3px #7f5af040;outline:none}.tools-filter-chip.active{background:linear-gradient(135deg,#7f5af047,#2cb1bc38);border-color:#7f5af052;border-color:var(--surface-border-strong);box-shadow:0 16px 28px #06081866;color:#f5f7ff;color:var(--text-primary);transform:translateY(-2px)}.tools-filter-count{align-items:center;background:#0c0e1ca6;border:1px solid #7f5af047;border-radius:999px;color:#c7cae6;color:var(--text-secondary);display:inline-flex;font-size:.75rem;font-weight:600;height:1.4rem;justify-content:center;min-width:1.75rem;padding:0 .5rem}.tool-directory-grid{margin-top:.5rem}.tool-directory-card{height:100%}.hero-card-list li::marker{color:#2cb1bc;color:var(--accent-end)}.section-heading p{margin-bottom:.25rem}@media (max-width:600px){.app-main{padding:3rem 0 4rem}.glass-section,.hero-card{padding:2rem 1.5rem}.hero-actions{align-items:stretch;flex-direction:column}}.no-highlight{-webkit-user-select:none;user-select:none}.gp-section{background:#121422c7;background:var(--surface-color);border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:20px;box-shadow:0 18px 40px #05061173;box-shadow:var(--shadow-soft);box-sizing:border-box;display:block;margin:0 auto 2rem;padding:2.25rem;position:relative;text-align:left;width:100%}.gp-divider{border-top:1px solid #828cc833;margin:1.75rem 0;width:100%}.gp-row{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-bottom:1rem}.cds-image-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));width:100%}.cds-image-card{border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 14px 28px #080a1c59;text-align:center}.cds-add-card,.cds-image-card{background:#121422c7;background:var(--surface-color);padding:1.25rem}.cds-add-card{border:1px dashed #7e8cff59;border-radius:16px;box-shadow:0 14px 28px #080a1c40;display:flex;flex-direction:column;gap:1rem}.cds-add-card,.cds-add-card .cds-image-controls{align-items:center}.cds-image-card:hover{border-color:#7f5af052;border-color:var(--surface-border-strong);box-shadow:0 22px 50px #0a0c1e99;box-shadow:var(--shadow-lift)}.cds-image{border-radius:4px;max-width:200px;width:100%}.cds-image-controls{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.cds-image-buttons{display:flex;gap:.5rem;justify-content:center}.cds-image-detail{align-items:center;border-bottom:1px solid #444;display:flex;gap:1rem;padding:.5rem 0}.cds-image-thumb{border-radius:4px;width:80px}.cds-thumb{background:#22253ad9;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;justify-content:center;padding:.35rem;transition:transform .2s ease,border-color .2s ease}.cds-thumb:hover{transform:translateY(-2px)}.cds-thumb.selected{background:#1fa07e40;border-color:#1fa07ecc}.cds-image-detail-info{display:flex;flex-direction:column;gap:.25rem}.location-title{display:block;font-size:1.5rem;margin-bottom:1rem;text-align:center;width:100%}.file-box{align-items:center;background:#151728d9;border:1px dashed #7e8cff59;border-radius:16px;box-shadow:0 12px 24px #05071459;cursor:pointer;display:flex;flex-direction:column;height:120px;justify-content:center;position:relative;transition:border-color .25s ease,transform .25s ease;width:120px}.file-box:hover{border-color:#7f5af052;border-color:var(--surface-border-strong);transform:translateY(-2px)}.file-box.preview{padding:0}.file-box.multi{padding:2px}.file-multi-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;height:100%;width:100%}.file-preview-small{border-radius:2px}.file-preview,.file-preview-small{height:100%;object-fit:cover;width:100%}.file-preview{border-radius:6px}.cds-add-wrapper{display:flex;justify-content:center;margin-bottom:1rem}.file-box-label{color:#c7cae6c7;color:var(--text-muted);font-size:.7rem;left:8px;max-width:100px;overflow:hidden;position:absolute;text-overflow:ellipsis;top:6px;white-space:nowrap}.file-box-plus{color:#2cb1bc;color:var(--accent-end);font-size:2.4rem}.file-chosen{color:#c7cae6c7;color:var(--text-muted);font-size:.7rem;margin-top:.3rem;max-width:90px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.file-box input[type=file]{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.combiner-description{color:#c7cae6c7;color:var(--text-muted);margin:0 auto 1.5rem;max-width:760px}.combiner-panel{margin-top:0}.combiner-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));justify-content:center;justify-items:center;margin:0 auto 1.5rem}.combiner-action{display:flex;justify-content:center}.combiner-tabs{margin:0 auto -2rem;width:calc(100% - 2px)}.combiner-tabs .cds-tab{border:none;border-right:1px solid #7e8cff2e}.combiner-tabs .cds-tab:last-child{border-right:none}.cds-tabs{background:#121422d9;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-bottom:none;border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 20px 36px #06081659;display:flex;justify-content:center;margin:0 auto -2rem;overflow:hidden;position:relative;width:calc(100% - 2px);z-index:2}.cds-tab{background:#191b2ccc;border-right:1px solid #7e8cff2e;color:#c7cae6c7;color:var(--text-muted);cursor:pointer;flex:1 1;font-weight:600;letter-spacing:.08em;padding:.6rem 1.1rem;text-align:center;text-transform:uppercase;transition:background .25s ease,color .25s ease}.cds-tab:last-child{border-right:none}.cds-tab.active,.cds-tab:hover{color:#f5f7ff;color:var(--text-primary)}.cds-tab.active{background:linear-gradient(135deg,#7f5af04d,#2cb1bc40)}.cds-screen-selector{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1rem}.cds-screen-tab{align-items:center;background:#181a2ad9;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:14px;box-shadow:0 12px 26px #0709194d;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;padding:.8rem;position:relative;transition:transform .2s ease,border-color .2s ease;width:140px}.cds-screen-tab .delete-btn{bottom:.4rem;position:absolute;right:.4rem}@media (max-width:768px){.cds-screen-tab .delete-btn{bottom:-.6rem;right:-.6rem}}.cds-screen-tab input[type=text]{background:#121422e6;border:1px solid #7e8cff40;border-radius:8px;box-sizing:border-box;color:#f5f7ff;color:var(--text-primary);padding:.4rem;width:100%}.cds-screen-tab.active{border-color:#7f5af052;border-color:var(--surface-border-strong);transform:translateY(-2px)}.cds-screen-placeholder{color:#888}.regen-btn{align-self:flex-end;background:none;border:none;color:#888;cursor:pointer}.regen-btn:hover{color:#fff}.screen-delete-btn{bottom:.4rem;position:absolute;right:.4rem}@media (max-width:768px){.screen-delete-btn{bottom:-.6rem;right:-.6rem}}.cds-screen-columns{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:1fr auto 1fr}.cds-screen-column{background:#141624d9;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 14px 28px #0709184d;display:flex;flex-direction:column;gap:.6rem;padding:.75rem}.cds-image-select-column{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}.cds-screen-controls{align-items:center;background:#141624d9;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 12px 26px #07091847;display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.cds-screen-controls button{background:#7f5af02e;border:1px solid #7f5af059;border-radius:8px;color:#f5f7ff;color:var(--text-primary);cursor:pointer;height:2rem;transition:transform .2s ease,box-shadow .2s ease;width:2rem}.cds-screen-controls button:hover{background:#7f5af04d;box-shadow:0 10px 20px #7f5af040;transform:translateY(-1px)}.custom-checkbox{align-items:center;cursor:pointer;display:inline-flex;gap:.3rem}.custom-checkbox input[type=checkbox]{appearance:none;background:#121422d9;border:1px solid #7e8cff47;border-radius:6px;height:18px;outline:none;transition:border-color .3s,background-color .3s;width:18px}.custom-checkbox input[type=checkbox]:checked{background-color:#1fa07e66;border-color:#1fa07ecc}.custom-checkbox span,.gp-label{color:#c7cae6;color:var(--text-secondary);font-size:.95rem}.gp-label{align-items:center;display:inline-flex;gap:.3rem}input[type=date],input[type=number],select{background:#121422d9;border:1px solid #7e8cff38;border-radius:10px;color:#f5f7ff;color:var(--text-primary);padding:.4rem .6rem}input[type=number]{width:60px}.delete-btn{align-items:center;background:#ff787826;border:1px solid #ff787866;border-radius:8px;color:#ff8ba7;cursor:pointer;display:flex;font-size:1rem;height:2rem;justify-content:center;padding:0;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;width:2rem}.delete-btn:hover{background:#ff787847;box-shadow:0 8px 18px #ff787840;transform:translateY(-1px)}.download-btn{align-items:center;background:#7f5af033;border:1px solid #7f5af073;border-radius:8px;color:#f5f7ff;color:var(--text-primary);cursor:pointer;display:flex;height:2rem;justify-content:center;padding:0;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;width:2rem}.download-btn:hover{background:#7f5af059;box-shadow:0 8px 18px #7f5af04d;transform:translateY(-1px)}.file-missing,.input-missing{border-color:red!important}.multibuy-card{grid-gap:1rem;background:#161827e0;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:18px;box-shadow:0 18px 36px #06081859;box-sizing:border-box;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:1.25rem;padding:1.2rem 1.5rem 2.6rem;position:relative;transition:transform .2s ease,box-shadow .2s ease;width:100%}.multibuy-card:hover{box-shadow:0 22px 44px #06081866;transform:translateY(-2px)}.multibuy-card .gp-label{color:#c7cae6;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.9rem}.multibuy-card input[type=number],.multibuy-card select{background:#121422d9;border:1px solid #7e8cff38;border-radius:10px;color:#f5f7ff;color:var(--text-primary);height:2.2rem;margin-top:.35rem;padding:0 .65rem;width:100%}.multibuy-card input[type=checkbox]{height:18px;width:18px}@media (min-width:600px){.multibuy-card input[type=number]{max-width:100px}}.member-checkbox{align-items:center;bottom:.9rem;display:inline-flex;gap:.35rem;left:1rem;position:absolute}.member-checkbox span{white-space:nowrap}.multibuy-card .delete-btn{position:absolute;right:.4rem;top:.4rem}@media (max-width:768px){.multibuy-card{grid-template-columns:1fr 1fr}.multibuy-card .delete-btn{right:-.6rem;top:-.6rem}.centered-container{padding:2.5rem 1.25rem;width:100%}.gp-section{padding:1.5rem}.navbar-inner{align-items:flex-start;flex-direction:column;width:100%}.nav-links{justify-content:flex-start;width:100%}.nav-button,.nav-item{margin:0}}.good-boy-wrapper{align-items:center;display:flex;height:100vh;justify-content:center;text-align:center}.good-boy-text{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#ff2a6d,#05d9e8,#ff2a6d);-webkit-background-clip:text;font-size:6rem;font-weight:900;letter-spacing:.5rem;text-shadow:0 0 10px #ff2a6d,0 0 20px #05d9e8}.api-button{background:#7f5af02e;border:1px solid #7f5af059;border-radius:999px;color:#f5f7ff;color:var(--text-primary);cursor:pointer;font-weight:600;letter-spacing:.06em;margin:1rem 0;padding:.6rem 1.2rem;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease}.api-button:hover{box-shadow:0 16px 32px #7f5af040;transform:translateY(-1px)}.api-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1rem}.api-card{background:#161827e0;border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:18px;box-shadow:0 18px 32px #0709184d;cursor:pointer;padding:1.25rem;text-align:left;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.api-card:hover{border-color:#7f5af052;border-color:var(--surface-border-strong);box-shadow:0 24px 42px #07091861;transform:translateY(-3px)}.api-card-title{font-size:1.1rem;margin:0 0 .5rem}.api-card-sub{color:#c7cae6;color:var(--text-secondary);font-size:.9rem;margin:.25rem 0}.api-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.api-modal .modal-content{background:#121422c7;background:var(--surface-color);border:1px solid #7886ff2e;border:1px solid var(--surface-border);border-radius:22px;box-shadow:0 22px 50px #0a0c1e99;box-shadow:var(--shadow-lift);max-width:500px;padding:2.4rem;text-align:center;width:90%}.modal-buttons{margin-top:1rem;text-align:center}.modal-buttons button{background:#7f5af02e;border:1px solid #7f5af059;border-radius:999px;color:#f5f7ff;color:var(--text-primary);cursor:pointer;margin-left:.5rem;padding:.5rem 1rem;transition:transform .2s ease,box-shadow .2s ease}.modal-buttons button:hover{box-shadow:0 14px 28px #7f5af040;transform:translateY(-1px)}.api-form label{display:block;margin:.5rem 0 .25rem;text-align:center}.api-form input,.api-form select{background:#121422d9;border:1px solid #7e8cff38;border-radius:10px;box-sizing:border-box;color:#f5f7ff;color:var(--text-primary);padding:.55rem .75rem;width:100%}.checkbox-group{display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center;margin:.5rem 0}.checkbox-group label{align-items:center;display:flex;gap:.25rem}.plu-input{background:#121422d9;border:1px solid #7e8cff4d;border-radius:12px;box-sizing:border-box;color:#f5f7ff;color:var(--text-primary);flex:1 1 320px;font-family:inherit;font-size:1rem;max-width:420px;min-width:0;padding:.6rem .85rem;width:auto}.plu-input:focus{border-color:#7e8cffa6;box-shadow:0 0 0 3px #7e8cff26;outline:none}.plu-textarea{line-height:1.4;min-height:140px;resize:vertical}.plu-multi-toggle{align-items:center;color:#c7cae6;color:var(--text-secondary);display:inline-flex;font-size:.9rem;gap:.5rem;margin:.5rem auto 0}.plu-multi-toggle input{height:1rem;width:1rem}.plu-data-card{background:#0f1224b8;border:1px solid #ffffff14;border-radius:20px;box-shadow:0 18px 36px #0b0f2373;margin-top:2rem;padding:1.75rem}.plu-data-heading{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.plu-data-title{display:flex;flex-wrap:wrap;gap:.5rem}.plu-chip{align-items:center;background:#4f5cdc2e;border:1px solid #4f5cdc66;border-radius:999px;display:inline-flex;font-size:.78rem;letter-spacing:.04em;padding:.3rem .65rem}.plu-data-heading h2{color:#f5f7ff;color:var(--text-primary);font-size:1.4rem;font-weight:600;margin:0}.plu-results-list{margin-top:1.5rem}.plu-result-card,.plu-results-list{display:flex;flex-direction:column;gap:1rem;width:100%}.plu-result-card{background:#0f1224b8;border:1px solid #ffffff0f;border-radius:18px;box-shadow:0 18px 32px #0b0f2359;padding:1.1rem 1.35rem}.plu-card-dirty{border-color:#ffc94d73;box-shadow:0 18px 36px #49360759}.plu-result-title{align-items:center;color:#f5f7ff;color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:1.05rem;font-weight:600;gap:.75rem;justify-content:space-between;margin:0}.plu-result-name{margin-right:.25rem}.plu-result-details{grid-gap:.4rem 1.2rem;display:grid;gap:.4rem 1.2rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.plu-result-detail{display:flex;flex-direction:column;gap:.2rem}.plu-result-detail span{color:#c7cae6;color:var(--text-secondary);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.plu-result-detail strong{color:#f5f7ff;color:var(--text-primary);font-size:.9rem;font-weight:600}.plu-rrp-section{border-top:1px solid #7886ff2e;border-top:1px solid var(--surface-border);display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:.75rem}.plu-rrp-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.plu-rrp-heading{color:#f5f7ff;color:var(--text-primary);font-size:.95rem;font-weight:600;margin:0}.plu-rrp-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem}.plu-rrp-control{align-items:center;color:#c7cae6;color:var(--text-secondary);display:flex;font-size:.85rem;gap:.45rem}.plu-rrp-control input,.plu-rrp-control select{background:#121422d9;border:1px solid #7e8cff4d;border-radius:.6rem;color:#f5f7ff;color:var(--text-primary);font:inherit;min-width:0;padding:.35rem .6rem}.plu-rrp-control input:focus,.plu-rrp-control select:focus{border-color:#7e8cffa6;box-shadow:0 0 0 2px #7e8cff33;outline:none}.plu-rrp-note{color:#c7cae6;color:var(--text-secondary);font-size:.8rem}.plu-rrp-note.error{color:var(--text-error)}.plu-rrp-state{background:#1214228c;border:1px solid #7e8cff2e;border-radius:.8rem;display:flex;flex-direction:column;gap:.45rem;padding:.75rem .9rem}.plu-rrp-state-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:.75rem}.plu-rrp-state-name{color:#c7cae6;color:var(--text-secondary);font-size:.95rem;letter-spacing:.08em;text-transform:uppercase}.plu-rrp-state-dept,.plu-rrp-state-gp{color:#f5f7ff;color:var(--text-primary);font-size:.85rem}.plu-rrp-state-description{color:#c7cae6c7;color:var(--text-muted);font-size:.8rem}.plu-rrp-zone-list{grid-gap:.5rem .75rem;display:grid;gap:.5rem .75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.plu-rrp-zone{background:#7f5af014;border-radius:.6rem;display:flex;flex-direction:column;gap:.25rem;padding:.5rem .6rem}.plu-rrp-zone-label{color:#c7cae6;color:var(--text-secondary);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.plu-rrp-zone-price{color:#f5f7ff;color:var(--text-primary);font-size:1rem;font-weight:600}.plu-rrp-zone-bump{color:#c7cae6c7;color:var(--text-muted);font-size:.75rem}.plu-result-title .plu-chip.subtle{background:#7e8cff2e;border-color:#7e8cff47;font-size:.72rem}.plu-row-top{gap:1rem 1.5rem;justify-content:space-between}.plu-row-summary,.plu-row-top{align-items:center;display:flex;flex-wrap:wrap}.plu-row-summary{gap:.65rem 1rem}.plu-row-identifiers{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.plu-input-group{align-items:center;display:flex;flex-wrap:nowrap;gap:.75rem}.plu-input-group .gp-label{flex-shrink:0;white-space:nowrap}@media (max-width:560px){.plu-input-group{align-items:stretch;flex-wrap:wrap}.plu-input{flex:1 1 100%;max-width:100%}}.plu-chip-editable{cursor:text;gap:.4rem}.plu-chip-editable input{background:#0000;border:none;color:inherit;font:inherit;padding:0;text-align:center;width:6ch}.plu-chip-editable input:focus{outline:none}.plu-chip-editable input::placeholder{color:inherit;opacity:.6}.plu-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.plu-refresh-button{background:linear-gradient(135deg,#7f5af066,#2cb1bc66);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:.45rem .95rem;transition:opacity .2s ease;white-space:nowrap}.plu-refresh-button:disabled{cursor:default;opacity:.6}.plu-row-status{color:#c7cae6;color:var(--text-secondary);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.plu-row-status.loading{color:#9eb3ff}.plu-row-status.pending{color:#ffc94d}.plu-row-body{display:flex;flex-direction:column;gap:.75rem}.plu-row-message{color:#c7cae6;color:var(--text-secondary);font-size:.9rem}.plu-row-message.error{color:#ff9b9b}.gp-label-stacked{align-items:flex-start;flex-direction:column;gap:.5rem}.gp-label-heading{align-items:center;display:inline-flex;font-size:.9rem;gap:.4rem;letter-spacing:.04em;text-transform:none}.plu-tooltip-trigger{align-items:center;background:linear-gradient(135deg,#7f5af08c,#2cb1bc8c);border-radius:50%;box-shadow:0 8px 18px #141a4073;color:#fff;cursor:help;display:inline-flex;font-size:.7rem;height:1.2rem;justify-content:center;position:relative;width:1.2rem}.plu-tooltip-trigger:focus-visible{outline:2px solid #7e8cff99;outline-offset:2px}.plu-tooltip-icon{font-weight:700}.plu-tooltip{background:#090c1cf2;border:1px solid #7e8cff66;border-radius:12px;box-shadow:0 16px 30px #0b0f2373;color:#f5f7ff;color:var(--text-primary);font-size:.8rem;left:50%;line-height:1.3;max-width:320px;opacity:0;padding:.6rem .9rem;pointer-events:none;position:absolute;top:calc(100% + .6rem);transform:translate(-50%,-10px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap;width:auto;z-index:20}.plu-tooltip-trigger:focus .plu-tooltip,.plu-tooltip-trigger:focus-within .plu-tooltip,.plu-tooltip-trigger:hover .plu-tooltip{opacity:1;transform:translate(-50%)}.matrix-heading{color:#f5f7ff;color:var(--text-primary);font-size:1.4rem;font-weight:600;margin:0 0 1.25rem}.matrix-state-tabs{border-bottom:1px solid #7886ff2e;border-bottom:1px solid var(--surface-border);border-bottom-left-radius:16px;border-bottom-right-radius:16px;margin:0 0 1.5rem}.matrix-status{color:#c7cae6;color:var(--text-secondary);margin:1rem 0;text-align:center}.matrix-code{color:#f5f7ff;color:var(--text-primary);font-size:1rem;font-weight:700}.matrix-name{color:#c7cae6;color:var(--text-secondary);font-size:.9rem}.matrix-list{display:flex;flex-direction:column;gap:.8rem}.matrix-row{align-items:center;background:#121422bf;border:1px solid #ffffff0d;border-radius:14px;display:flex;flex-wrap:wrap;gap:.65rem 1.1rem;padding:.65rem .9rem}.matrix-row-dirty{border-color:#7f5af073}.matrix-row-info{display:flex;flex-direction:column;gap:.2rem;min-width:160px}.matrix-row-inputs{display:flex;flex-wrap:wrap;gap:.55rem}.matrix-row-inputs label{color:#c7cae6;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.75rem;gap:.25rem;min-width:140px}.matrix-row-inputs span{letter-spacing:.05em;text-transform:uppercase}.matrix-row-inputs input{background:#121422e6;border:1px solid #7e8cff40;border-radius:10px;color:#f5f7ff;color:var(--text-primary);min-width:140px;padding:.45rem}.matrix-row>.matrix-save-button{margin-left:auto}.matrix-save-button{background:linear-gradient(135deg,#7f5af066,#2cb1bc66);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:opacity .2s ease}.matrix-save-button:disabled{cursor:default;opacity:.5}.rules-list{margin-bottom:1.5rem}.rule-row,.rules-list{display:flex;flex-direction:column;gap:1rem}.rule-row{background:#0f1224b8;border:1px solid #ffffff0f;border-radius:18px;box-shadow:0 18px 32px #0b0f2359;padding:1.1rem 1.35rem;width:100%}.rule-row-dirty{border-color:#7f5af080;box-shadow:0 18px 36px #31186c59}.rule-row-top{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem 1rem;justify-content:space-between}.rule-row-actions{display:flex;flex-wrap:wrap;gap:.75rem}.rule-row-fields{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.rule-row-fields label{color:#c7cae6;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.8rem;gap:.35rem;letter-spacing:.05em;text-transform:uppercase}.rule-row-fields input,.rule-row-fields select{background:#121422e6;border:1px solid #7e8cff40;border-radius:10px;color:#f5f7ff;color:var(--text-primary);padding:.45rem .55rem}.rule-row-fields select{appearance:none}.rule-wide-field{grid-column:1/-1}.rule-priority-pill{align-items:center;background:#4f5cdc2e;border:1px solid #4f5cdc59;border-radius:999px;color:#c7cae6;color:var(--text-secondary);display:inline-flex;font-size:.75rem;gap:.4rem;letter-spacing:.08em;padding:.25rem .6rem;text-transform:uppercase}.rule-priority-pill strong{color:#f5f7ff;color:var(--text-primary);font-weight:600;letter-spacing:.04em}.rule-priority-view{display:flex;flex-direction:column;gap:1.5rem}.rule-priority-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.rule-priority-status{color:#c7cae6;color:var(--text-secondary);font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}.rule-priority-list{display:flex;flex-direction:column;gap:.75rem}.rule-priority-row{align-items:center;background:#121422d9;border:1px solid #7e8cff40;border-radius:14px;cursor:grab;display:flex;gap:1rem;justify-content:space-between;padding:.55rem .9rem;transition:background .2s ease,border-color .2s ease,transform .2s ease}.rule-priority-row.dragging{opacity:.5;transform:scale(.99)}.rule-priority-row:active{cursor:grabbing}.rule-priority-name{color:#f5f7ff;color:var(--text-primary);font-weight:600}.rule-priority-value{color:#c7cae6;color:var(--text-secondary);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.rule-priority-dropzone{border:1px dashed #7e8cff40;border-radius:999px;height:12px;transition:background .2s ease,border-color .2s ease,height .2s ease}.rule-priority-dropzone.active{background:#7f5af059;border-color:#7f5af099;height:16px}.rule-priority-hint{color:#c7cae6;color:var(--text-secondary);font-size:.8rem;letter-spacing:.05em;margin:0;text-transform:uppercase}.rule-delete-button{background:#df4a4a33;border:1px solid #df4a4a66;border-radius:999px;color:#ff9b9b;cursor:pointer;font-weight:600;padding:.5rem 1rem}.rule-delete-button:disabled{cursor:default;opacity:.5}.add-rule-row h3{font-size:1.1rem;margin:0}.add-rule-row h3,.plu-data-table{color:#f5f7ff;color:var(--text-primary)}.plu-data-table{border-collapse:collapse;width:100%}.plu-data-table td,.plu-data-table th{border-bottom:1px solid #ffffff14;padding:.6rem .75rem;text-align:left}.plu-data-table th{color:#c7cae6;color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;width:40%}.plu-data-table tr:last-child td,.plu-data-table tr:last-child th{border-bottom:none}
/*# sourceMappingURL=main.eb291608.css.map*/