:root{--op-color-border: rgba(255, 255, 255, .18);--op-color-border-soft: rgba(255, 255, 255, .12);--op-color-surface: rgba(255, 255, 255, .05);--op-color-surface-alt: rgba(255, 255, 255, .08);--op-color-input-bg: rgba(255, 255, 255, .06);--op-color-input-disabled-bg: rgba(148, 163, 184, .14);--op-color-placeholder: #b7c5e4;--op-color-focus: #22d3ee;--op-color-link-hover: #67e8f9;--op-color-danger: #fecdd3;--op-color-danger-bg: rgba(94, 21, 44, .72);--op-color-danger-border: rgba(244, 63, 94, .35);--op-color-success-text: #dcfce7;--op-color-success-banner-bg: rgba(34, 197, 94, .18);--op-color-success-banner-border: rgba(34, 197, 94, .35);--op-color-table-header: #b7c5e4;--op-color-success: #22c55e;--op-color-success-border: rgba(34, 197, 94, .5);--op-color-success-bg-hover: rgba(34, 197, 94, .1);--op-color-table-bg: #1a2233;--op-color-thead-bg: rgba(0, 0, 0, .4);--op-color-table-border: rgba(255, 255, 255, .1);--op-color-row-hover: rgba(255, 255, 255, .06);--op-color-tooltip-border: #e0e0e0;--op-color-tooltip-bg: #fff;--op-color-tooltip-shadow: rgba(0, 0, 0, .15);--op-color-modal-bg: #1a2233;--op-color-muted: #6b7280;--op-color-muted-hover-bg: #f3f4f6;--op-color-muted-hover: #374151;--op-color-table-border-light: #e5e7eb;--op-color-strong: #5a677c;--op-color-link: #22d3ee;--op-color-text: #e9eefc;--op-button-primary-bg: #3b82f6;--op-button-primary-bg-hover: #2563eb;--op-color-card-red: rgb(204, 16, 22);--op-color-card-green: rgb(0, 145, 102);--op-color-card-blue: rgb(0, 136, 187);--op-color-card-black: rgb(31, 24, 27);--op-color-card-purple: rgb(139, 52, 133);--op-color-card-yellow: rgb(248, 231, 46);--op-color-card-multi: rgb(107, 114, 128);--op-color-counter: #a5141e;--op-color-on-action: #0573b6;--op-color-don: #000;--op-color-reaction: #ff6600;--op-color-restriction: #d14059;--op-color-trigger: #f8e624}:root{--mat-dialog-container-color: var(--op-color-modal-bg);--mat-dialog-subhead-color: var(--op-color-text);--mat-dialog-supporting-text-color: var(--op-color-text);--mat-dialog-content-padding: 1.5rem;--mat-dialog-with-actions-content-padding: 0 16px 0 0;--mat-button-tonal-container-color: var(--op-button-primary-bg);--mat-button-tonal-container-shape: 10px;--mat-autocomplete-background-color: var(--op-color-modal-bg);--mat-tooltip-container-color: var(--op-color-modal-bg);--mat-tooltip-container-shape: 3px;--mat-table-background-color: var(--op-color-table-bg);--mat-table-header-headline-color: var(--op-color-text);--mat-table-row-item-label-text-color: var(--op-color-text);--mat-paginator-container-text-color: var(--op-color-text);--mat-paginator-container-background-color: var(--op-color-table-bg);--mat-paginator-disabled-icon-color: var(--op-color-muted)}mat-dialog-container{background-color:var(--op-color-modal-bg);padding:16px 0 16px 16px;border-radius:12px}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:linear-gradient(180deg,#0f172a,#0b1020);color:var(--op-color-text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}app-root{display:block;margin-top:25px;min-height:100vh}.cdk-overlay-pane{font-size:.8rem;font-weight:100}.cdk-overlay-pane mat-option{border-bottom:rgb(45,49,56) 1px solid}a{color:var(--op-color-link);text-decoration:none}a:hover{color:var(--op-color-link-hover);text-decoration:underline}.global-status{background:#7dd3fc33;border-bottom:1px solid rgba(125,211,252,.4);padding:8px 24px}.global-status.error{background:var(--op-color-danger-bg);border-bottom-color:var(--op-color-danger-border)}.card-id,.collector-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.card-id{font-weight:500}.skip-link{left:12px;position:fixed;top:-48px;z-index:1000}.skip-link:focus-visible{background:#0b1020;border:2px solid var(--op-color-focus);border-radius:8px;color:var(--op-color-text);padding:8px 10px;top:12px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--op-color-focus);outline-offset:2px}.page-wrap{margin:0 auto;padding:24px}.row{display:flex;flex-wrap:wrap;gap:12px}.shell{min-height:100vh}.shell-header{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080e1eb8;border-bottom:1px solid var(--op-color-border-soft);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px 24px}.shell-menu-toggle{background:var(--op-color-surface-alt);border:1px solid var(--op-color-border);border-radius:8px;color:var(--op-color-text);cursor:pointer;display:none;font-size:1.1rem;line-height:1;padding:8px 10px}.shell-nav-actions{align-items:center;display:flex;gap:12px}.shell-header nav{display:flex;gap:12px}.shell-header a{border-radius:8px;color:var(--op-color-placeholder);padding:8px 10px}.shell-header a.active,.shell-header a:hover{background:#ffffff1a;color:var(--op-color-text)}.shell-content{margin:0 auto;max-width:1400px;padding:20px 24px}main.page-wrap{margin-bottom:100px}@media(max-width:720px){.shell-header{align-items:stretch;display:grid;gap:10px;grid-template-columns:1fr auto}.shell-title{align-self:center}.shell-menu-toggle{align-items:center;display:inline-flex;justify-content:center}.shell-nav-actions{align-items:stretch;display:none;flex-direction:column;grid-column:1/-1;width:100%}.shell-nav-actions.open{display:flex}.shell-header nav{flex-direction:column;gap:6px}.shell-header nav a{padding:10px}.shell-content{padding:0}.page-wrap{padding:10px}}.ui-btn{align-items:center;background:var(--op-color-surface-alt);border:1px solid var(--op-color-border);border-radius:10px;color:var(--op-color-text);cursor:pointer;display:inline-flex;font-weight:600;gap:8px;justify-content:center;padding:10px 14px;transition:background-color .2s ease,border-color .2s ease,opacity .2s ease,transform .2s ease}.ui-btn:hover:not(:disabled){background:#ffffff1f}.ui-btn:disabled{cursor:not-allowed;opacity:.65}.ui-btn-primary{background:linear-gradient(135deg,#22d3ee,#a78bfa);border:none;color:#0b1020}.ui-btn-primary:hover:not(:disabled){filter:brightness(1.04)}.ui-btn-secondary{background:var(--op-color-surface-alt);color:var(--op-color-text)}.ui-card{background:var(--op-color-surface);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px}.ui-surface-panel{border-radius:1rem;border:1px solid var(--op-color-border-soft);background:#090f1866}.ui-kicker{margin:0;color:var(--op-color-placeholder);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.ui-pill{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--op-color-border);background:var(--op-color-surface);color:var(--op-color-table-header);font-size:.82rem;font-weight:600;letter-spacing:.03em}.ui-tag-link{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .8rem;border-radius:999px;color:var(--op-color-text);font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .12s ease,border-color .12s ease,background-color .12s ease}.ui-form-section{border-top:1px solid var(--op-color-border-soft);margin-top:14px;padding-top:14px}.ui-feedback{margin:0}.ui-feedback[data-state=error]{color:var(--op-color-danger)}label{display:grid;gap:6px;font-weight:600}input[type=text],input[type=search],input[type=email],input[type=password],input[type=number],select,textarea{background:var(--op-color-input-bg);border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--op-color-text);color-scheme:dark;font:inherit;line-height:1.4;padding:9px 10px}input[type=text]::placeholder,input[type=search]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,input[type=number]::placeholder,textarea::placeholder{color:var(--op-color-placeholder)}input[type=text]:disabled,input[type=search]:disabled,input[type=email]:disabled,input[type=password]:disabled,input[type=number]:disabled,select:disabled,textarea:disabled{background:var(--op-color-input-disabled-bg);cursor:not-allowed;opacity:.75}select{cursor:pointer}select option{background:#1e293b;color:var(--op-color-text)}textarea{min-height:96px;resize:vertical}fieldset,.collection-view-mode{border:1px solid rgba(255,255,255,.16);border-radius:8px;display:flex;gap:16px;padding:10px 12px}fieldset label,.collection-view-mode label{align-items:center;display:inline-flex;font-weight:500;gap:6px}.add-card-form,.import-form,.collection-filters,.collection-edit-form,.wishlist-form,.wishlist-edit-form{display:grid;gap:12px}.auth-wrap{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-wrap app-ui-card{max-width:480px;width:100%}.auth-form{display:grid;gap:12px;margin:1.5rem 0}.form-group{display:grid;gap:6px}.form-group :is(input,select,textarea){width:100%}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:.5rem}.auth-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;margin:1rem 0}.auth-links a{color:var(--op-color-link)}.row.auth-actions,.row.auth-login-actions{justify-content:center;margin-top:1rem}.error-banner,.success-banner{border-radius:10px;margin-bottom:1rem;padding:.875rem 1rem}.error-banner{background:var(--op-color-danger-bg);border:1px solid var(--op-color-danger-border);color:var(--op-color-danger)}.success-banner{background:var(--op-color-success-banner-bg);border:1px solid var(--op-color-success-banner-border);color:var(--op-color-success-text)}.import-form input[type=file]{background:var(--op-color-surface);border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--op-color-text);padding:9px 10px}app-ui-set-selector,app-ui-card-search{display:block;width:100%}app-ui-set-selector .input-wrapper,app-ui-card-search .input-wrapper{position:relative;width:100%}app-ui-set-selector input,app-ui-card-search input{box-sizing:border-box;padding-right:36px;width:100%}app-ui-set-selector .spinner,app-ui-card-search .spinner{animation:ui-control-spin .8s linear infinite;border:2px solid var(--op-color-table-border, rgba(255, 255, 255, .2));border-radius:50%;border-top-color:var(--op-color-link, #22d3ee);height:16px;pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%);width:16px}app-ui-set-selector .clear-btn,app-ui-card-search .clear-btn{align-items:center;background:none;border:none;color:var(--op-color-table-header);cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;line-height:1;padding:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);width:20px}app-ui-set-selector .clear-btn:hover,app-ui-card-search .clear-btn:hover{color:var(--op-color-text)}@keyframes ui-control-spin{to{transform:translateY(-50%) rotate(360deg)}}@media(max-width:640px){.add-card-form fieldset,.collection-view-mode{flex-direction:column;gap:8px}}.filter-bar{background:#0f172ae6;border:1px solid rgba(255,255,255,.1);border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:12px 16px}.filter-bar-top{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px}.filter-bar-fields{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:10px;min-width:0}.filter-search-input,.filter-set-selector{flex:1 1 290px;min-width:290px}.filter-search-input{height:38px}.filter-set-selector{min-height:38px}.clear-filters-btn{flex:0 0 auto;min-width:110px}.filter-bar-chips{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-around}.chip-group{align-items:center;display:flex;flex-wrap:wrap;gap:5px}.chip{border:none;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;line-height:1;transition:background .15s,color .15s,border-color .15s,transform .1s}.chip:active{transform:scale(.93)}.chip:focus-visible{outline:2px solid var(--op-color-focus);outline-offset:2px}.chip-rarity{background:#ffffff1a;border:1px solid rgba(255,255,255,.25);border-radius:4px;color:var(--op-color-text);min-width:30px;padding:4px 7px;text-align:center}.chip-rarity.chip-active{background:#d4ac0d;border-color:#d4ac0d;color:#111}.chip-type{background:#ffffff0f;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:var(--op-color-text);padding:4px 12px}.chip-type.chip-active{background:#3b82f6;border-color:#3b82f6;color:#fff}.chip-color{border:2px solid rgba(255,255,255,.25);border-radius:50%;flex-shrink:0;height:26px;padding:0;width:26px}.chip-color.chip-active{border-color:#fff;box-shadow:0 0 0 2px #3b82f6}.chip-cost{align-items:center;background:#0f172a;border:2px solid #b8924a;border-radius:50%;color:var(--op-color-text);display:flex;flex-shrink:0;font-size:.7rem;height:30px;justify-content:center;padding:0;width:30px}.chip-cost.chip-active{background:#b8924a;border-color:#fff;color:#111}.results-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:.75rem}.results-count{color:var(--op-color-muted);font-size:.85rem}.results-toolbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.results-sort-label{white-space:nowrap}.view-toggle{border:1px solid rgba(255,255,255,.15);border-radius:6px;display:flex;flex-shrink:0}.view-btn{align-items:center;background:transparent;border:none;color:var(--op-color-muted);cursor:pointer;display:flex;flex:0 0 auto;justify-content:center;min-height:30px;min-width:34px;padding:6px 9px;transition:background .15s,color .15s}.view-btn:first-child{border-radius:5px 0 0 5px}.view-btn:last-child{border-radius:0 5px 5px 0}.view-btn lucide-icon{display:block;height:16px;line-height:0;width:16px}.view-btn:hover{background:#ffffff14;color:var(--op-color-text)}.view-btn[aria-pressed=true],.view-btn.active{background:#3b82f640;color:#3b82f6}.view-btn+.view-btn{border-left:1px solid rgba(255,255,255,.15)}.view-btn:focus-visible{outline:2px solid var(--op-color-focus);outline-offset:-2px}.results-sort-select{font-size:.85rem;min-height:30px;min-width:120px}@media(max-width:620px){.filter-search-input,.filter-set-selector{min-width:100%}}table thead{background-color:#ffffff0f;border-bottom:2px solid rgba(255,255,255,.2)}table th{color:var(--op-color-text);font-weight:600;padding:.75rem;text-align:left}table td{border-bottom:1px solid #e5e7eb;padding:.75rem}table tbody tr{transition:background-color .2s}table tbody tr:hover{background-color:#ffffff0f}table .clickable-row{cursor:pointer}table .clickable-row:hover{background-color:#22d3ee2d}.landing-wrap{margin:0 auto;max-width:1120px;padding:22px 20px 30px}.landing-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.landing-brand{font-weight:800;letter-spacing:.2px}.landing-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:#0a1230d1;padding:24px;display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:center}.landing-hero:before,.landing-hero:after{content:"";position:absolute;filter:blur(28px);pointer-events:none;z-index:0}.landing-hero:before{width:260px;height:260px;right:-70px;top:-70px;background:#a78bfa66}.landing-hero:after{width:220px;height:220px;left:-60px;bottom:-80px;background:#22d3ee2d}.landing-hero>*{position:relative;z-index:1}.landing-copy h1{margin:0 0 10px;font-size:clamp(34px,5vw,56px);line-height:1.03}.landing-copy p{margin:0;color:#b8c7ea;line-height:1.52;max-width:620px}.landing-cta-row{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.landing-auth-error{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.landing-visual{border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:10px;background:#ffffff0a}.landing-visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.landing-chip{height:86px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:linear-gradient(170deg,#22d3ee59,#a78bfa3d)}.landing-features{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.landing-features h2{margin:0 0 6px;font-size:15px}.landing-features p{margin:0;color:#b8c7ea;line-height:1.4;font-size:14px}.auth-callback-wrap,.auth-login-wrap{max-width:720px}.auth-callback-wrap h1,.auth-login-wrap h1{margin:0 0 8px}.auth-callback-wrap p,.auth-login-wrap p,.add-card-wrap p,.import-wrap p,.collection-wrap p,.wishlist-wrap p{color:var(--op-color-placeholder)}.auth-callback-wrap h1{margin:0 0 8px}.auth-login-actions{margin-top:14px}.add-card-wrap,.import-wrap,.collection-wrap,.wishlist-wrap{display:grid;gap:14px}.add-card-wrap h1{margin:0 0 6px}.add-card-wrap h2{margin:0}.add-card-results{display:grid;gap:10px}.add-card-result-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.add-card-result-header h3{margin:0}.add-card-result-header span{color:#b7c5e4;font-size:13px}.import-wrap h1,.import-wrap h2{margin:0 0 8px}.import-errors{margin:0;padding-left:18px}.import-errors li{color:#fecdd3;margin-bottom:6px}.collection-wrap h1,.collection-wrap h2{margin:0 0 8px}.collection-items{display:grid;gap:10px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-item-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.collection-item-header h2{margin:0;font-size:18px}.collection-item-header span{color:#b7c5e4;font-size:13px}.wishlist-wrap h1,.wishlist-wrap h2{margin:0 0 8px}.modal-overlay{position:fixed;inset:0;background-color:#00000080;z-index:998}.modal-content{background-color:var(--op-color-modal-bg);border-radius:8px;padding:16px;max-width:90%;margin:40px auto;position:relative;z-index:999;overflow:auto;max-height:80vh}@media(max-width:900px){.landing-hero,.landing-features,.collection-grid{grid-template-columns:1fr}}@media(max-width:640px){.landing-wrap{padding:12px 10px 18px}.landing-hero{border-radius:14px;padding:14px}.landing-copy h1{font-size:clamp(30px,10vw,42px)}.landing-cta-row{flex-direction:column}.landing-auth-error{flex-direction:column;align-items:stretch}.landing-cta-row .ui-btn,.landing-auth-error .ui-btn{width:100%}.add-card-result-header,.collection-item-header{align-items:flex-start;flex-direction:column}}
