@font-face{font-family:Cormorant Garamond;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600.woff2) format("woff2")}@font-face{font-family:Outfit;font-weight:400;font-display:swap;src:url(/fonts/outfit-400.woff2) format("woff2")}@font-face{font-family:Outfit;font-weight:600;font-display:swap;src:url(/fonts/outfit-600.woff2) format("woff2")}@font-face{font-family:Bebas Neue;font-weight:400;font-display:swap;src:url(/fonts/bebas-neue-400.woff2) format("woff2")}@font-face{font-family:Anton;font-weight:400;font-display:swap;src:url(/fonts/anton-400.woff2) format("woff2")}@font-face{font-family:Oswald;font-weight:600;font-display:swap;src:url(/fonts/oswald-600.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:600;font-display:swap;src:url(/fonts/barlow-condensed-600.woff2) format("woff2")}@font-face{font-family:Archivo Black;font-weight:400;font-display:swap;src:url(/fonts/archivo-black-400.woff2) format("woff2")}@font-face{font-family:League Gothic;font-weight:400;font-display:swap;src:url(/fonts/league-gothic-400.woff2) format("woff2")}@font-face{font-family:Fjalla One;font-weight:400;font-display:swap;src:url(/fonts/fjalla-one-400.woff2) format("woff2")}@font-face{font-family:Staatliches;font-weight:400;font-display:swap;src:url(/fonts/staatliches-400.woff2) format("woff2")}@font-face{font-family:Teko;font-weight:600;font-display:swap;src:url(/fonts/teko-600.woff2) format("woff2")}@font-face{font-family:Khand;font-weight:600;font-display:swap;src:url(/fonts/khand-600.woff2) format("woff2")}@font-face{font-family:Saira Condensed;font-weight:600;font-display:swap;src:url(/fonts/saira-condensed-600.woff2) format("woff2")}@font-face{font-family:Bungee;font-weight:400;font-display:swap;src:url(/fonts/bungee-400.woff2) format("woff2")}@font-face{font-family:Alfa Slab One;font-weight:400;font-display:swap;src:url(/fonts/alfa-slab-one-400.woff2) format("woff2")}@font-face{font-family:Ultra;font-weight:400;font-display:swap;src:url(/fonts/ultra-400.woff2) format("woff2")}@font-face{font-family:Bevan;font-weight:400;font-display:swap;src:url(/fonts/bevan-400.woff2) format("woff2")}@font-face{font-family:Abril Fatface;font-weight:400;font-display:swap;src:url(/fonts/abril-fatface-400.woff2) format("woff2")}@font-face{font-family:Yeseva One;font-weight:400;font-display:swap;src:url(/fonts/yeseva-one-400.woff2) format("woff2")}@font-face{font-family:Passion One;font-weight:700;font-display:swap;src:url(/fonts/passion-one-700.woff2) format("woff2")}@font-face{font-family:Lilita One;font-weight:400;font-display:swap;src:url(/fonts/lilita-one-400.woff2) format("woff2")}@font-face{font-family:Paytone One;font-weight:400;font-display:swap;src:url(/fonts/paytone-one-400.woff2) format("woff2")}@font-face{font-family:Rye;font-weight:400;font-display:swap;src:url(/fonts/rye-400.woff2) format("woff2")}@font-face{font-family:Pacifico;font-weight:400;font-display:swap;src:url(/fonts/pacifico-400.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Work Sans;font-weight:400;font-display:swap;src:url(/fonts/work-sans-400.woff2) format("woff2")}@font-face{font-family:Lexend;font-weight:400;font-display:swap;src:url(/fonts/lexend-400.woff2) format("woff2")}@font-face{font-family:Atkinson Hyperlegible Next;font-weight:400;font-display:swap;src:url(/fonts/atkinson-hyperlegible-next-400.woff2) format("woff2")}@font-face{font-family:Fira Sans;font-weight:400;font-display:swap;src:url(/fonts/fira-sans-400.woff2) format("woff2")}@font-face{font-family:"Source Sans 3";font-weight:400;font-display:swap;src:url(/fonts/source-sans-3-400.woff2) format("woff2")}@font-face{font-family:Open Sans;font-weight:400;font-display:swap;src:url(/fonts/open-sans-400.woff2) format("woff2")}@font-face{font-family:Lato;font-weight:400;font-display:swap;src:url(/fonts/lato-400.woff2) format("woff2")}@font-face{font-family:Nunito Sans;font-weight:400;font-display:swap;src:url(/fonts/nunito-sans-400.woff2) format("woff2")}@font-face{font-family:Figtree;font-weight:400;font-display:swap;src:url(/fonts/figtree-400.woff2) format("woff2")}@font-face{font-family:Mulish;font-weight:400;font-display:swap;src:url(/fonts/mulish-400.woff2) format("woff2")}@font-face{font-family:Karla;font-weight:400;font-display:swap;src:url(/fonts/karla-400.woff2) format("woff2")}@font-face{font-family:Rubik;font-weight:400;font-display:swap;src:url(/fonts/rubik-400.woff2) format("woff2")}@font-face{font-family:Public Sans;font-weight:400;font-display:swap;src:url(/fonts/public-sans-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-400.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:400;font-display:swap;src:url(/fonts/barlow-400.woff2) format("woff2")}@font-face{font-family:DM Sans;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-400.woff2) format("woff2")}@font-face{font-family:Cabin;font-weight:400;font-display:swap;src:url(/fonts/cabin-400.woff2) format("woff2")}@font-face{font-family:"Baloo 2";font-weight:600;font-display:swap;src:url(/fonts/baloo-2-600.woff2) format("woff2")}@font-face{font-family:Nunito;font-weight:400;font-display:swap;src:url(/fonts/nunito-400.woff2) format("woff2")}@font-face{font-family:Nunito;font-weight:800;font-display:swap;src:url(/fonts/nunito-800.woff2) format("woff2")}@font-face{font-family:Fredoka;font-weight:600;font-display:swap;src:url(/fonts/fredoka-600.woff2) format("woff2")}@font-face{font-family:Quicksand;font-weight:700;font-display:swap;src:url(/fonts/quicksand-700.woff2) format("woff2")}@font-face{font-family:Varela Round;font-weight:400;font-display:swap;src:url(/fonts/varela-round-400.woff2) format("woff2")}@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(/fonts/poppins-400.woff2) format("woff2")}.cache-status-view{position:fixed;top:16px;right:16px;z-index:10000;font-family:Courier New,monospace;font-size:12px;line-height:1.5;color:#fff;background:#000000d9;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:0;box-shadow:0 4px 12px #0000004d}.cache-status-container{padding:12px 16px;min-width:200px;max-width:280px}.cache-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px}.cache-status-title{font-weight:700;font-size:13px}.cache-status-toggle{background:transparent;border:none;color:#fff9;cursor:pointer;font-size:16px;padding:0;margin:0;transition:color .2s}.cache-status-toggle:hover{color:#fff}.cache-status-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.cache-status-label{color:#ffffffb3;min-width:70px;text-align:left}.cache-status-value{color:#ffffffe6;font-weight:500;text-align:right;flex:1}.hit-status-excellent{color:#0f0;font-weight:700}.hit-status-good{color:#ff0}.hit-status-fair{color:#f80}.hit-status-poor{color:#f33}.thermal-cool{color:#0f0}.thermal-warm{color:#ff0}.thermal-hot{color:#f33;font-weight:700}.thermal-unknown{color:#fff9}.cache-size{font-size:11px;color:#fffc}.cache-queue{color:#fffc}.cache-timestamp{font-size:11px;color:#fff9}@media(max-width:400px){.cache-status-view{top:8px;right:8px;font-size:11px}.cache-status-container{padding:8px 12px;min-width:160px;max-width:220px}.cache-status-label{min-width:60px;font-size:10px}.cache-status-value{font-size:10px}}@media(prefers-color-scheme:dark){.cache-status-view{background:#000000e6}}.pairing-overlay{position:fixed;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#08070a99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9998;animation:pairing-fade-in .25s cubic-bezier(.4,0,.2,1)}@keyframes pairing-fade-in{0%{opacity:0}to{opacity:1}}.pairing-card{position:relative;z-index:9999;display:flex;flex-direction:column;width:100%;max-width:600px;padding:48px 40px;background:#fafaf8;border:1px solid #dfd7cb;border-radius:12px;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.pairing-icon{width:64px;height:64px;margin:0 auto 24px;color:#08070a;display:flex;align-items:center;justify-content:center}.pairing-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;fill:none}.pairing-title{margin:0 0 8px;font-family:Outfit,system-ui,sans-serif;font-size:32px;font-weight:600;line-height:1.25;color:#2c2420;text-align:center}.pairing-subtitle{margin:0 0 32px;font-family:Outfit,system-ui,sans-serif;font-size:16px;font-weight:400;line-height:1.5;color:#5c564c;text-align:center}.pairing-code{display:flex;justify-content:center;gap:12px}.pairing-cell{width:60px;height:72px;padding:0;text-align:center;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:24px;font-weight:400;text-transform:uppercase;color:#08070a;background:#fff;border:2px solid #dfd7cb;border-radius:8px;transition:border-color .12s ease,box-shadow .12s ease}.pairing-cell:focus{border-color:#c8922a;box-shadow:0 0 0 3px #c8922a26;outline:2px solid #c8922a;outline-offset:2px}.pairing-cell:disabled{background:#f2efe9;color:#8b8478}.pairing-helper{margin:12px 0 0;font-family:Outfit,system-ui,sans-serif;font-size:12px;color:#8b8478;text-align:center}.pairing-message{display:flex;align-items:center;justify-content:center;gap:6px;margin:12px 0 0;font-family:Outfit,system-ui,sans-serif;font-size:14px;text-align:center}.pairing-message--error{color:#b91d13}.pairing-message--success{color:#2d7d3c}.pairing-actions{display:flex;gap:16px;margin-top:32px}.pairing-btn{min-height:44px;padding:12px 20px;font-family:Outfit,system-ui,sans-serif;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;transition:background-color .12s ease,opacity .12s ease}.pairing-btn:disabled{opacity:.5;cursor:not-allowed}.pairing-btn--secondary{flex:0 0 auto;min-width:40%;color:#2c2420;background:transparent;border:1px solid #dfd7cb}.pairing-btn--secondary:not(:disabled):hover{background:#f2efe9}.pairing-btn--primary{flex:1;color:#08070a;background:#e2b455;border:1px solid #c8922a}.pairing-btn--primary:not(:disabled):hover{background:#d9a83f}@media(max-width:1023px){.pairing-card{padding:40px;max-width:calc(100% - 48px);margin:24px}.pairing-cell{width:52px;height:64px}}@media(max-width:767px){.pairing-card{padding:32px;margin:16px;width:auto}.pairing-title{font-size:28px;line-height:1.3}.pairing-subtitle{font-size:14px;margin-bottom:24px}.pairing-cell{width:48px;height:56px;font-size:20px}.pairing-code{gap:8px}}@media(prefers-reduced-motion:reduce){.pairing-overlay{animation:none;opacity:1}.pairing-cell{transition:none}}.pairing-pad{display:grid;grid-template-columns:repeat(3,minmax(88px,1fr));gap:12px;max-width:420px;margin-left:auto;margin-right:auto;margin-top:24px;padding:12px;background:#f2ede4;border:1px solid #dfd7cb;border-radius:10px;width:100%}.pairing-pad-key{min-height:72px;padding:0 4px;font-size:30px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,monospace;background:#fff;color:#08070a;border:2px solid #dfd7cb;border-radius:8px;cursor:pointer;transition:background .1s,border-color .1s,transform .1s}.pairing-pad-key:focus,.pairing-pad-key:focus-visible{outline:none;border-color:#c8922a;background:#fff4dd;box-shadow:0 0 0 3px #c8922a66;transform:scale(1.06)}.pairing-pad-key:disabled{opacity:.4;cursor:not-allowed}.pairing-pad-key--del{background:#f9e6e6;border-color:#d9b3b3;color:#7a2222}.pairing-pad-key--ok{background:#c8922a;border-color:#c8922a;color:#fff}.pairing-pad-key--ok:focus,.pairing-pad-key--ok:focus-visible{background:#b3811d;border-color:#08070a}.welcome-screen{position:fixed;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#08070a;z-index:9997}.welcome-card{display:flex;flex-direction:column;align-items:center;gap:28px;width:100%;max-width:900px;padding:48px;text-align:center}.welcome-title{margin:0;font-size:clamp(28px,4vw,48px);color:#f5f1e8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.welcome-accent{color:#c8a04b}.welcome-subtitle{margin:0;font-size:clamp(16px,2vw,20px);color:#b8b2a8}.welcome-tiles{display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));gap:20px;width:100%;margin-top:12px}.welcome-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px 20px;min-height:160px;background:#121016;border:2px solid #2a2530;border-radius:20px;color:#f5f1e8;font-size:20px;font-weight:600;text-decoration:none;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.welcome-tile:hover{border-color:#c8a04b;transform:translateY(-2px)}.welcome-tile:focus-visible{outline:4px solid #c8a04b;outline-offset:4px;border-color:#c8a04b}.welcome-tile--primary{background:#c8a04b24;border-color:#c8a04b73}.welcome-tile-icon{width:48px;height:48px;color:#c8a04b}.welcome-tile-icon svg{width:100%;height:100%}.welcome-tile-label{font-size:clamp(16px,1.6vw,20px)}.welcome-tile-badge{display:inline-block;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;letter-spacing:.02em;color:#c8a04b;border:1px solid rgba(200,160,75,.45);border-radius:10px;vertical-align:middle}.welcome-tile-sub{font-size:13px;font-weight:400;color:#b8b2a8;line-height:1.4}.welcome-footer{margin:4px 0 0;color:#857f78;font-size:14px;max-width:640px}@media(max-width:700px){.welcome-tiles{grid-template-columns:1fr}}.admin-overlay{position:fixed;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#08070aeb;z-index:9999}.admin-overlay-card{display:flex;flex-direction:column;align-items:stretch;gap:16px;width:100%;max-width:480px;padding:40px;background:#121014;border:1px solid #2a251c;border-radius:12px}.admin-overlay-title{margin:0 0 8px;font-size:clamp(20px,3vw,28px);color:#f5f1e8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;text-align:center}.admin-overlay-subtitle{margin:0 0 8px;font-size:14px;color:#b8b2a8;text-align:center}.admin-overlay-option{display:block;width:100%;padding:16px 20px;font-size:18px;color:#f5f1e8;background:#1c1912;border:2px solid transparent;border-radius:8px;cursor:pointer;text-align:left;font-family:inherit}.admin-overlay-option:focus{outline:none;border-color:#c8a04b;background:#26200f}.admin-overlay-option[data-destructive=true]{color:#e8846b}.admin-overlay-note{margin-top:8px;font-size:12px;color:#7a7568;text-align:center}
