@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap";:root{color:#f7f2e8;font-synthesis:none;background:#11100f;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 85% -20%,#653a2a 0,#0000 33rem),radial-gradient(circle at -10% 30%,#302849 0,#0000 30rem),#11100f;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell,.status-page,.sign-in-page{width:min(1120px,100% - 32px);margin:0 auto}.app-shell{padding:30px 0 80px}.app-header{justify-content:space-between;align-items:flex-start;gap:24px;padding:12px 0 36px;display:flex}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#fffaf2}h1{letter-spacing:-.055em;margin-bottom:15px;font:600 clamp(2.7rem,7vw,5.5rem)/.96 Playfair Display,serif}h2{letter-spacing:-.035em;margin-bottom:7px;font:600 clamp(1.65rem,3vw,2.4rem)/1 Playfair Display,serif}h3{margin-bottom:8px;font-size:1.16rem;line-height:1.13}p{color:#c9c0b7;line-height:1.55}.eyebrow{color:#f2af68;letter-spacing:.14em;margin-bottom:10px;font:500 .7rem/1.2 DM Mono,monospace}.welcome,.section-intro{font-size:1.03rem}.button{border:0;border-radius:999px;min-height:42px;padding:10px 17px;font-size:.88rem;font-weight:600;transition:transform .18s,background .18s,border-color .18s}.button:hover:not(:disabled){transform:translateY(-2px)}.button-primary{color:#21150d;background:linear-gradient(135deg,#ffd094,#ed9458);box-shadow:0 8px 22px #dd81433d}.button-secondary{color:bisque;background:#39291f;border:1px solid #755745}.button-quiet{color:#d8cec3;background:0 0;border:1px solid #50483f}.button-danger{color:#f4c9c1;background:0 0;border:1px solid #754843}.button-danger-solid{color:#fff4ec;background:#9d4c43;box-shadow:0 8px 22px #9d4c4338}.button-row{flex-wrap:wrap;gap:8px;display:flex}.notice{color:#f5d0b1;margin:16px 0 0}.notice-error{background:#48222280;border:1px solid #864a46;border-radius:12px;padding:12px 15px}.search-panel,.picker-panel,.movie-section{background:linear-gradient(145deg,#24211eeb,#181715ed);border:1px solid #4a4138;border-radius:22px;box-shadow:0 20px 60px #00000029}.search-panel{padding:clamp(20px,4vw,32px)}.search-heading,.section-heading{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.search-heading>p{text-align:right;max-width:290px;font-size:.9rem}.search-form{gap:10px;margin-top:23px;display:flex}.search-actions{gap:8px;display:flex}.search-form label{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.search-form input{color:#fffaf2;background:#141311;border:1px solid #5e5349;border-radius:12px;outline:none;flex:1;min-width:0;padding:12px 15px}.search-form input:focus{border-color:#f2af68;box-shadow:0 0 0 3px #f2af6826}.search-results,.movie-grid{margin:25px 0 0;padding:0;list-style:none}.search-results{gap:12px;display:grid}.search-result{background:#161513;border-radius:15px;gap:16px;padding:12px;display:flex}.search-poster{object-fit:cover;background:#312d29;border-radius:8px;flex:none;width:72px;height:108px}.search-result-copy{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.search-result-copy>p:not(.movie-meta){-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:.88rem;display:-webkit-box;overflow:hidden}.search-result-copy .button{margin-top:auto}.picker-panel{margin-top:22px;padding:clamp(22px,4vw,38px);position:relative;overflow:hidden}.picker-panel:after{content:"✦";color:#f2af6830;pointer-events:none;font-size:13rem;line-height:1;position:absolute;top:-45px;right:4%}.picker-panel>.button{z-index:1;margin-top:17px;position:relative}.empty-copy{margin-top:13px}.picked-movie{z-index:1;background:#171311a8;border:1px solid #72523e;border-radius:17px;align-items:center;gap:24px;margin-top:28px;padding:18px;display:flex;position:relative}.picked-poster{object-fit:cover;background:#312d29;border-radius:10px;flex:none;width:112px;height:168px}.picked-copy{min-width:0}.picked-copy h3{margin-bottom:10px;font:600 clamp(1.7rem,4vw,2.7rem)/1 Playfair Display,serif}.movie-meta{color:#e5ad78;letter-spacing:.04em;margin-bottom:9px;font:500 .72rem/1.3 DM Mono,monospace}.added-by,.watched-date{margin-bottom:15px;font-size:.82rem}.watched-date{color:#aee0bd}.movie-section{margin-top:22px;padding:clamp(20px,4vw,32px)}.history-section{margin-top:22px}.count-badge{color:#f6c99c;white-space:nowrap;border:1px solid #70523e;border-radius:999px;padding:6px 10px;font:500 .72rem DM Mono,monospace}.movie-grid{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:15px;display:grid}.movie-card{background:#171614;border:1px solid #423b34;border-radius:15px;flex-direction:column;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.movie-card:hover{border-color:#80644d;transform:translateY(-4px)}.card-poster,.poster-placeholder{object-fit:cover;background:linear-gradient(145deg,#352d26,#201d1a);width:100%;height:250px}.poster-placeholder{color:#a69b8e;place-items:center;font-size:.8rem;display:grid}.card-content{flex-direction:column;flex:1;align-items:flex-start;padding:16px;display:flex}.card-content .button-row{margin-top:auto}.watched-card{opacity:.8}.empty-state{text-align:center;border:1px dashed #564c42;border-radius:14px;margin:23px 0 5px;padding:27px}.status-page,.sign-in-page{place-items:center;min-height:100vh;display:grid}.status-page>*,.sign-in-card{background:#1e1b19ed;border:1px solid #4a4138;border-radius:22px;width:min(480px,100%);padding:32px}.sign-in-card h1{font-size:clamp(2.8rem,10vw,4.8rem)}.sign-in-card label{color:#e7ded3;margin:18px 0 7px;font-size:.9rem;display:block}.sign-in-card input{color:#fff;background:#141311;border:1px solid #5e5349;border-radius:10px;width:100%;padding:12px 14px}.sign-in-card .button{width:100%;margin-top:14px}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080706bd;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{background:linear-gradient(145deg,#2a2520,#191614);border:1px solid #71513b;border-radius:22px;width:min(460px,100%);padding:clamp(24px,5vw,36px);box-shadow:0 28px 90px #00000080}.confirm-dialog h2{margin-bottom:13px}.confirm-dialog p:not(.eyebrow){font-size:1rem}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:25px;display:flex}@media (width<=620px){.app-shell,.status-page,.sign-in-page{width:min(100% - 22px,1120px)}.app-shell{padding-top:18px}.app-header,.search-heading,.section-heading{flex-direction:column;align-items:flex-start}.app-header .button{align-self:flex-start}.search-heading>p{text-align:left}.search-form{flex-direction:column}.search-actions{width:100%}.search-actions .button{flex:1}.picked-movie{flex-direction:column;align-items:flex-start}.picked-poster{width:100px;height:150px}.movie-grid{grid-template-columns:1fr 1fr;gap:10px}.card-poster,.poster-placeholder{height:190px}.card-content{padding:12px}.card-content h3{font-size:1rem}.card-content .button-row,.card-content .button{width:100%}.button{min-height:40px;padding:9px 13px;font-size:.8rem}.search-result{gap:12px}.search-poster{width:60px;height:90px}.dialog-actions{flex-direction:column-reverse;align-items:stretch}.dialog-actions .button{width:100%}}
