@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=DM+Sans:wght@300;400;500&display=swap";:root{--navy: #0d1b2a;--navy-mid: #162133;--navy-card: #1b2a3d;--gold: #c9a84c;--gold-light: #e2c278;--cream: #f5ecd7;--muted: #7a94ab;--white: #ffffff;--font-display: "Playfair Display", Georgia, serif;--font-body: "DM Sans", sans-serif;--radius: 6px;--transition: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased}body{background-color:var(--navy);color:var(--cream);font-family:var(--font-body);font-weight:300;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background-image:radial-gradient(ellipse at 20% 30%,rgba(201,168,76,.06) 0%,transparent 60%),radial-gradient(ellipse at 80% 80%,rgba(13,27,42,.8) 0%,transparent 70%)}.page{width:100%;max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:2.5rem;animation:fadeUp .6s ease both}.site-header{text-align:center;padding-top:1rem}.logo-mark{font-size:2rem;color:var(--gold);opacity:.7;margin-bottom:.4rem;display:block}h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,2.6rem);font-weight:700;color:var(--cream);letter-spacing:-.02em;line-height:1.1;padding-bottom:0}h1:after{display:none}.brand-accent{color:var(--gold)}.tagline{margin-top:.5rem;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);background:none;border:none;padding:0;min-height:unset;animation:none}.search-section{display:flex;flex-direction:column;gap:.6rem}.field-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-left:.25rem}.form-row{display:flex;align-items:center;gap:.75rem;width:100%;background:var(--navy-card);border:1px solid rgba(201,168,76,.2);border-radius:var(--radius);padding:.5rem .5rem .5rem 1.25rem;transition:border-color var(--transition),box-shadow var(--transition)}.form-row:focus-within{border-color:#c9a84c99;box-shadow:0 0 0 3px #c9a84c14}input[type=number],input[type=password]{flex:1;background:transparent;border:none;outline:none;color:var(--cream);font-family:var(--font-body);font-size:1rem;font-weight:400;-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input[type=number]::placeholder,input[type=password]::placeholder{color:var(--muted)}.input-unit{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}button{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-light) 100%);color:var(--navy);border:none;border-radius:calc(var(--radius) - 2px);padding:.65rem 1.5rem;font-family:var(--font-body);font-size:.875rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:opacity var(--transition),transform var(--transition);white-space:nowrap}button:hover{opacity:.9;transform:translateY(-1px)}button:active{transform:translateY(0);opacity:1}.btn-ghost{background:transparent;color:var(--muted);border:1px solid rgba(201,168,76,.15);border-radius:var(--radius);padding:.35rem .8rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.4rem;transform:none}.btn-ghost:hover{border-color:#c9a84c66;color:var(--cream);transform:none;opacity:1}.btn-ghost.active{border-color:#c9a84c80;color:var(--gold-light)}.filter-count{background:var(--gold);color:var(--navy);border-radius:99px;font-size:.65rem;padding:.05rem .4rem;font-weight:600}.chevron{display:inline-block;transition:transform .2s ease;font-style:normal;font-size:1rem;line-height:1;transform:rotate(0)}.chevron.open{transform:rotate(90deg)}.filter-row{display:flex;align-items:center;gap:.75rem;padding-left:.1rem}.toggle-label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);-webkit-user-select:none;user-select:none}.toggle-label:hover{color:var(--cream)}.toggle-label input[type=checkbox]{display:none}.toggle-track{width:28px;height:16px;background:#ffffff14;border:1px solid rgba(201,168,76,.2);border-radius:99px;position:relative;flex-shrink:0;transition:background .2s ease,border-color .2s ease}.toggle-label input:checked+.toggle-track{background:#c9a84c40;border-color:var(--gold)}.toggle-thumb{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--muted);transition:transform .2s ease,background .2s ease}.toggle-label input:checked+.toggle-track .toggle-thumb{transform:translate(12px);background:var(--gold)}.composer-picker{display:flex;flex-wrap:wrap;gap:.4rem;padding:.75rem;background:var(--navy-card);border:1px solid rgba(201,168,76,.1);border-radius:var(--radius);overflow:hidden}.composer-chip{background:transparent;color:var(--muted);border:1px solid rgba(201,168,76,.15);border-radius:99px;padding:.25rem .75rem;font-size:.75rem;font-weight:400;letter-spacing:.04em;text-transform:none;transform:none;transition:background var(--transition),color var(--transition),border-color var(--transition)}.composer-chip:hover{border-color:#c9a84c66;color:var(--cream);transform:none;opacity:1}.composer-chip.selected{background:#c9a84c1f;border-color:var(--gold);color:var(--gold-light)}.error-msg{font-size:.85rem;color:#e07070;background:#e0707014;border-left:3px solid #e07070;border-radius:0 var(--radius) var(--radius) 0;padding:.75rem 1rem}.loader-dots span{display:inline-block;animation:blink 1.2s infinite}.loader-dots span:nth-child(2){animation-delay:.2s}.loader-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.2}40%{opacity:1}}.results-header{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid rgba(201,168,76,.15);padding-bottom:.6rem}.results-label{font-family:var(--font-display);font-size:.95rem;font-style:italic;color:var(--gold-light)}.results-meta{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.suggestion-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;padding:0}.suggestion-card{background:var(--navy-card);border:1px solid rgba(201,168,76,.1);border-radius:var(--radius);padding:1rem 1.2rem;display:flex;align-items:center;gap:.75rem;animation:fadeUp .4s ease both}.card-main{flex:1;display:flex;flex-direction:column;gap:.2rem}.card-composer{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);opacity:.85}.card-work{font-family:var(--font-display);font-size:.98rem;font-weight:400;font-style:italic;color:var(--cream);line-height:1.4}.card-footer-row{display:flex;align-items:center;gap:.6rem;margin-top:.15rem}.card-duration{font-size:.7rem;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--muted)}.badge-verified{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(201,168,76,.35);border-radius:99px;padding:.1rem .5rem;white-space:nowrap}.badge-verified.small{font-size:.6rem}.card-admin{display:flex;flex-direction:column;gap:.3rem;flex-shrink:0}.admin-btn{background:transparent;color:#fff3;border:1px solid rgba(255,255,255,.1);border-radius:4px;width:28px;height:28px;padding:0;font-size:.75rem;letter-spacing:0;text-transform:none;display:flex;align-items:center;justify-content:center;transition:color var(--transition),border-color var(--transition),background var(--transition)}.admin-btn:hover{transform:none;opacity:1;color:var(--cream);border-color:#ffffff4d}.admin-btn--active{color:var(--gold);border-color:#c9a84c80;background:#c9a84c14}.admin-btn--exclude.admin-btn--active{color:#e07070;border-color:#e0707066;background:#e0707014}.welcome-msg{text-align:center;color:var(--muted);font-size:.9rem;background:transparent;border:none;min-height:unset;padding:0}.site-footer{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding-bottom:1.5rem}.footer-notes{font-size:.85rem;letter-spacing:.5em;color:#c9a84c33}.footer-legend{font-size:.7rem;color:#7a94ab99;display:flex;align-items:center;gap:.4rem}.btn-admin-toggle{background:transparent;border:none;color:#7a94ab40;font-size:.65rem;letter-spacing:.15em;padding:.25rem .5rem;transform:none;margin-top:.25rem}.btn-admin-toggle:hover{color:#7a94ab80;transform:none;opacity:1}.admin-panel{background:var(--navy-card);border:1px solid rgba(201,168,76,.15);border-radius:var(--radius);padding:1rem 1.2rem}.admin-label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;background:none;border:none;padding:0;min-height:unset;animation:none}.admin-logged-in{display:flex;align-items:center;justify-content:space-between}.fade-up-enter-active{transition:opacity .4s ease,transform .4s ease}.fade-up-enter-from{opacity:0;transform:translateY(12px)}.expand-enter-active,.expand-leave-active{transition:opacity .2s ease,transform .2s ease;transform-origin:top}.expand-enter-from,.expand-leave-to{opacity:0;transform:scaleY(.95)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(max-width:420px){.form-row{flex-direction:column;align-items:stretch;padding:1rem}button{width:100%;padding:.8rem;text-align:center}.card-work{font-size:.9rem}.filter-row{flex-wrap:wrap}}
