:root{--ink: #141820;--ink-soft: #1c2330;--cream: #f4ead7;--cream-muted: #d9cbb3;--gold: #c6a15b;--gold-bright: #e2c27a;--bordeaux: #8c3040;--bordeaux-deep: #6a2230;--mist: rgba(244, 234, 215, .08);--line: rgba(198, 161, 91, .35);--shadow: 0 18px 40px rgba(0, 0, 0, .35);--font-display: "Fraunces", Georgia, serif;--font-body: "Outfit", system-ui, sans-serif;--radius: .35rem;--space-xs: .35rem;--space-sm: .65rem;--space-md: 1rem;--space-lg: 1.75rem;--space-xl: 2.75rem;--transition: .18s ease}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font-body);color:var(--cream);background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(140,48,64,.28),transparent 55%),radial-gradient(ellipse 60% 40% at 90% 20%,rgba(198,161,91,.08),transparent 45%),linear-gradient(180deg,#0f131a 0%,var(--ink) 40%,#10151d 100%);min-height:100vh}.stars{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(1px 1px at 12% 18%,rgba(244,234,215,.55),transparent),radial-gradient(1px 1px at 28% 62%,rgba(244,234,215,.35),transparent),radial-gradient(1.5px 1.5px at 47% 24%,rgba(226,194,122,.45),transparent),radial-gradient(1px 1px at 63% 78%,rgba(244,234,215,.3),transparent),radial-gradient(1px 1px at 81% 36%,rgba(244,234,215,.45),transparent),radial-gradient(1px 1px at 91% 68%,rgba(226,194,122,.35),transparent);opacity:.7;z-index:0}#app{position:relative;z-index:1;min-height:100vh}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:.01em;margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent;border-radius:999px;padding:.7rem 1.25rem;transition:background var(--transition),border-color var(--transition),color var(--transition)}.btn--gold{background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:var(--ink);border-color:#ffffff26;font-weight:600}.btn--gold:hover{filter:brightness(1.05)}.btn--gold:disabled{opacity:.6;cursor:wait}.btn--ghost{background:transparent;border-color:var(--line);color:var(--cream-muted);padding:.45rem .9rem}.btn--ghost:hover{border-color:var(--gold);color:var(--cream)}.app-shell{max-width:1200px;margin:0 auto;padding:var(--space-md) var(--space-md) var(--space-xl)}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-md);padding:var(--space-md) 0 var(--space-lg);border-bottom:1px solid var(--line)}.topbar__brand{display:flex;align-items:center;gap:.75rem}.topbar__mark{color:var(--gold);font-size:1.4rem}.topbar__eyebrow{margin:0;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cream-muted)}.topbar__title{font-size:1.6rem;line-height:1;color:var(--cream)}.topbar__nav{display:flex;gap:.35rem}.nav-link{background:transparent;border:0;color:var(--cream-muted);padding:.45rem .85rem;border-radius:999px;transition:color var(--transition),background var(--transition)}.nav-link:hover,.nav-link.is-active{color:var(--cream);background:var(--mist)}.topbar__user{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.topbar__name{color:var(--gold-bright);font-weight:500}.category-rail{display:flex;flex-wrap:wrap;gap:.5rem;padding:var(--space-md) 0}.category-pill{background:transparent;border:1px solid var(--line);color:var(--cream-muted);border-radius:999px;padding:.45rem .95rem;transition:border-color var(--transition),color var(--transition),background var(--transition)}.category-pill:hover{color:var(--cream);border-color:var(--gold)}.category-pill.is-active{background:#8c304059;border-color:var(--bordeaux);color:var(--cream)}.stage{padding-top:var(--space-sm)}.empty-state{color:var(--cream-muted);text-align:center;padding:var(--space-xl)}@media(max-width:860px){.topbar{grid-template-columns:1fr;justify-items:start}.topbar__user{justify-content:flex-start}.topbar__nav{flex-wrap:wrap}}.login-page{min-height:100vh;display:grid;place-items:center;padding:var(--space-lg)}.login-card{width:min(440px,100%);padding:var(--space-xl) var(--space-lg);border:1px solid var(--line);border-radius:calc(var(--radius) * 2);background:linear-gradient(160deg,#1c2330f2,#141820eb);box-shadow:var(--shadow)}.login-eyebrow{margin:0 0 var(--space-xs);letter-spacing:.22em;text-transform:uppercase;font-size:.72rem;color:var(--gold)}.login-title{font-size:clamp(2.2rem,6vw,3rem);margin-bottom:var(--space-sm)}.login-lead{margin:0 0 var(--space-lg);color:var(--cream-muted);line-height:1.5}.account-grid{display:grid;gap:.6rem;margin-bottom:var(--space-lg)}.account-chip{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;background:#f4ead70a;border:1px solid transparent;border-radius:var(--radius);padding:.7rem .85rem;transition:border-color var(--transition),background var(--transition)}.account-chip:hover{border-color:var(--line)}.account-chip.is-selected{border-color:var(--gold);background:#c6a15b1a}.account-chip__initial{width:2rem;height:2rem;display:grid;place-items:center;border-radius:50%;background:var(--bordeaux);color:var(--cream);font-family:var(--font-display)}.account-chip__name{font-weight:500}.login-form{display:grid;gap:var(--space-md)}.field{display:grid;gap:.4rem}.field__label{font-size:.85rem;color:var(--cream-muted)}.field__input{background:#00000040;border:1px solid var(--line);border-radius:var(--radius);padding:.75rem .9rem;outline:none}.field__input:focus{border-color:var(--gold)}.login-error{margin:0;color:#f0a0ab;font-size:.9rem}.salle__header{display:flex;justify-content:space-between;align-items:end;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.salle__eyebrow{margin:0 0 .25rem;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;color:var(--gold)}.salle__title{font-size:clamp(1.8rem,4vw,2.4rem)}.counters{display:flex;gap:.75rem;flex-wrap:wrap}.counter{min-width:5.5rem;padding:.55rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:#f4ead708;text-align:center}.counter__value{display:block;font-family:var(--font-display);font-size:1.15rem;color:var(--gold-bright)}.counter__label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cream-muted)}.toolbar{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:var(--space-lg);align-items:center}.toolbar--compact{margin-bottom:var(--space-md)}.search,.select-wrap{flex:1 1 180px}.search input,.select-wrap select{width:100%;background:#00000038;border:1px solid var(--line);border-radius:var(--radius);padding:.65rem .85rem;outline:none}.search input:focus,.select-wrap select:focus{border-color:var(--gold)}.filter-pills{display:flex;gap:.35rem}.filter-pill{background:transparent;border:1px solid var(--line);border-radius:999px;padding:.5rem .85rem;color:var(--cream-muted)}.filter-pill.is-active{border-color:var(--gold);color:var(--cream);background:#c6a15b1f}.era-chapter{margin-bottom:var(--space-xl)}.era-chapter__header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:var(--space-md);padding-bottom:.55rem;border-bottom:1px solid var(--line)}.era-chapter__title{font-size:.95rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream)}.era-chapter__years{color:var(--cream-muted);font-size:.85rem}.era-chapter__count{margin-left:auto;color:var(--gold);font-family:var(--font-display)}.film-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.85rem}.film-card{position:relative;aspect-ratio:2 / 3;border:1px solid rgba(244,234,215,.12);border-radius:calc(var(--radius) * 1.4);overflow:hidden;padding:.85rem;display:flex;flex-direction:column;justify-content:flex-end;text-align:left;background:linear-gradient(180deg,transparent 20%,rgba(10,12,16,.82) 100%),radial-gradient(circle at 30% 20%,hsla(var(--film-hue),55%,48%,.55),transparent 50%),linear-gradient(145deg,hsla(var(--film-hue),40%,22%,.95),#12161e);transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)}.film-card__poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.film-card__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,transparent 35%,rgba(10,12,16,.88) 100%);pointer-events:none}.film-card.has-poster{background:#12161e}.film-card.has-poster .film-card__year,.film-card.has-poster .film-card__title,.film-card.has-poster .film-card__stamp{position:relative;z-index:2}.film-card:hover{transform:translateY(-3px);border-color:#c6a15b8c;box-shadow:0 12px 28px #00000059}.film-card.is-watched{border-color:#c6a15bb3}.film-card.is-watched:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(198,161,91,.12),transparent 40%);pointer-events:none}.film-card__motif{position:absolute;inset:12% 14% auto;height:42%;border:1px solid rgba(244,234,215,.18);border-radius:40% 60% 55% 45%/45% 40% 60% 55%;background:radial-gradient(circle at 40% 35%,hsla(var(--film-hue),70%,65%,.35),transparent 65%);opacity:.85}.film-card__year{font-size:.75rem;letter-spacing:.08em;color:var(--cream-muted);margin-bottom:.25rem}.film-card__title{font-family:var(--font-display);font-size:.98rem;line-height:1.2;color:var(--cream)}.film-card__stamp{position:absolute;top:.65rem;right:.7rem;color:var(--gold-bright);font-size:1rem}@media(max-width:600px){.film-wall{grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}}.tiers__header{display:flex;justify-content:space-between;align-items:end;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap}.tier-status{margin:0;color:var(--cream-muted);font-size:.85rem}.tier-board{display:grid;gap:.65rem}.tier-row{display:grid;grid-template-columns:3.2rem 1fr;gap:.55rem;min-height:4.5rem}.tier-row__label{display:grid;place-items:center;font-family:var(--font-display);font-size:1.35rem;border-radius:var(--radius);background:#f4ead70f;border:1px solid var(--line)}.tier-row__label--S{color:#f0d48a;border-color:#f0d48a73}.tier-row__label--A{color:#d9b36a}.tier-row__label--B{color:#c4b59a}.tier-row__label--C{color:#a89a86}.tier-row__label--D{color:#8d8172}.tier-row__lane{display:flex;flex-wrap:wrap;gap:.45rem;align-content:flex-start;padding:.45rem;border:1px dashed rgba(198,161,91,.25);border-radius:var(--radius);background:#0000002e;min-height:4.5rem;transition:border-color var(--transition),background var(--transition)}.tier-row__lane.is-over{border-color:var(--gold);background:#c6a15b14}.tier-row--pool .tier-row__lane{min-height:7rem}.tier-card{width:min(160px,100%);padding:.55rem .65rem;border-radius:var(--radius);border:1px solid rgba(244,234,215,.14);background:linear-gradient(135deg,hsla(var(--film-hue),45%,28%,.85),#12161ef2);cursor:grab;-webkit-user-select:none;user-select:none}.tier-card.has-poster{background:linear-gradient(180deg,#0a0c1026,#0a0c10e0),var(--poster) center / cover no-repeat;min-height:4.2rem}.tier-card.is-dragging{opacity:.45}.tier-card__title{display:block;font-family:var(--font-display);font-size:.88rem;line-height:1.2}.tier-card__sub{display:block;margin-top:.2rem;font-size:.72rem;color:var(--cream-muted)}.tier-empty{margin:.5rem;color:var(--cream-muted);font-size:.9rem}@media(max-width:600px){.tier-row{grid-template-columns:2.5rem 1fr}.tier-card{width:calc(50% - .25rem)}}
