:root{--paper:#f7f3ea;--ink:#25212d;--purple:#5d35c9;--yellow:#ffd94d;--coral:#ff765f;--muted:#847d86;--line:#ded8ce}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope, sans-serif}.grain{position:fixed;inset:0;pointer-events:none;opacity:.07;z-index:5;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:relative;z-index:2}.brand{font-size:18px;font-weight:800;letter-spacing:-.04em;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:9px}.brand-mark{color:var(--coral);font-size:25px}.week-label,.section-kicker,.eyebrow,.search-hint{font-family:"DM Mono",monospace;text-transform:uppercase;font-size:10px;letter-spacing:.12em}.week-label{color:var(--muted)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#53b873;margin-right:7px}.profile-button{border:0;background:none;font:inherit;font-size:12px;font-weight:700;display:flex;align-items:center;gap:8px;color:var(--ink);cursor:pointer}.avatar{display:grid;place-items:center;background:var(--purple);color:white;border-radius:50%;font-weight:800}.avatar-small{width:28px;height:28px;font-size:12px}.chevron{font-size:18px;color:var(--muted)}main{max-width:1320px;margin:auto;padding:0 5vw}.intro{min-height:485px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.eyebrow{color:var(--muted);margin:0 0 28px}.eyebrow span{color:var(--coral);font-size:15px;margin-left:8px}h1,h2{font-family:Fraunces,serif;letter-spacing:-.06em;margin:0}h1{font-size:clamp(62px,8vw,118px);line-height:.86;font-weight:700}h1 em{color:var(--purple);font-style:normal}.intro-copy{font-size:15px;line-height:1.65;color:var(--muted);margin:28px 0}.primary-button{background:var(--purple);border:0;color:white;border-radius:3px;padding:15px 18px;font:700 13px Manrope;cursor:pointer;display:inline-flex;align-items:center;gap:16px;transition:transform .2s, background .2s}.primary-button:hover{background:#4825a7;transform:translateY(-2px)}.button-icon{font-size:19px;font-weight:400}.button-arrow{font-size:17px;margin-left:15px}.intro-art{height:100%;position:relative;display:flex;align-items:center;justify-content:center}.sunburst{width:310px;height:310px;border-radius:50%;background:repeating-conic-gradient(from 0deg,var(--yellow) 0 10deg,#f5c83f 10deg 20deg);clip-path:polygon(50% 0,62% 37%,85% 15%,73% 40%,100% 50%,73% 60%,85% 85%,62% 63%,50% 100%,38% 63%,15% 85%,27% 60%,0 50%,27% 40%,15% 15%,38% 37%);animation:spin 25s linear infinite}.sticker{position:absolute;background:var(--coral);color:white;font:700 13px "DM Mono";line-height:1.1;letter-spacing:.08em;padding:16px 12px;transform:rotate(8deg);top:20%;right:18%;box-shadow:4px 4px 0 var(--ink)}.art-note{position:absolute;bottom:18%;left:19%;font:600 12px "DM Mono";line-height:1.3;transform:rotate(-8deg)}.art-emoji{position:absolute;font-size:90px;color:var(--purple);bottom:15%;right:25%;transform:rotate(10deg)}.art-star{position:absolute;font-size:42px;color:var(--coral);top:22%;left:18%}.wall-section{padding:38px 0 90px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.section-kicker{color:var(--coral);font-size:10px}.section-heading h2{font-size:42px;margin-top:8px}.attendees{font:11px "DM Mono";color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:7px}.mood-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.mood-card{background:white;min-height:275px;display:flex;flex-direction:column;animation:rise .5s both}.mood-card:nth-child(2){animation-delay:.06s}.mood-card:nth-child(3){animation-delay:.12s}.mood-card:nth-child(4){animation-delay:.18s}.gif-frame{height:190px;background:#eee;overflow:hidden}.gif-frame img{width:100%;height:100%;object-fit:cover;display:block}.mood-info{padding:14px 15px 12px;flex:1;display:flex;flex-direction:column}.person{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:800}.person .avatar{width:25px;height:25px;font-size:10px}.message{font-size:13px;line-height:1.35;margin:10px 0;color:#4e4853}.reactions{margin-top:auto;display:flex;gap:5px}.reaction{border:1px solid var(--line);background:var(--paper);border-radius:20px;padding:5px 8px;font-size:12px;cursor:pointer}.reaction:hover{border-color:var(--purple);transform:scale(1.05)}.empty-state{text-align:center;padding:80px;color:var(--muted)}.modal-backdrop{position:fixed;inset:0;background:rgba(37,33,45,.45);z-index:10;display:grid;place-items:center;padding:20px}.composer{background:var(--paper);width:min(560px,100%);max-height:92vh;overflow:auto;padding:36px;position:relative;box-shadow:12px 12px 0 var(--yellow)}.close-button{position:absolute;top:14px;right:17px;border:0;background:none;font-size:28px;cursor:pointer;color:var(--muted)}.composer-header h2{font-size:48px;margin:9px 0}.composer-header p{font-size:13px;color:var(--muted);margin:0 0 25px}.field-label{display:block;font:10px "DM Mono";text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:15px 0 7px}.field-label span{font-family:Manrope;text-transform:none;letter-spacing:0;font-size:11px}.text-input{width:100%;border:1px solid var(--line);background:white;padding:12px 13px;font:13px Manrope;color:var(--ink);outline:0;border-radius:2px}.text-input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #5d35c91a}.search-wrap{position:relative;display:flex;align-items:center}.search-wrap>span:first-child{position:absolute;left:12px;font-size:21px;color:var(--muted)}.search-wrap .text-input{padding-left:35px}.search-hint{position:absolute;right:12px;color:var(--coral);font-size:9px}.gif-results{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.gif-choice{height:75px;cursor:pointer;overflow:hidden;border:2px solid transparent}.gif-choice:hover,.gif-choice.selected{border-color:var(--purple)}.gif-choice img{width:100%;height:100%;object-fit:cover}.message-input{min-height:75px;resize:vertical}.full-button{width:100%;justify-content:center;margin-top:20px}@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:800px){.topbar{padding:0 22px}.week-label{display:none}main{padding:0 22px}.intro{grid-template-columns:1fr;min-height:620px;padding-top:60px}.intro-art{position:absolute;right:-90px;bottom:-55px;width:330px;height:300px;opacity:.9}.sunburst{width:250px;height:250px}.art-note{left:0}.sticker{right:5%;top:5%}.mood-grid{grid-template-columns:repeat(2,1fr)}.gif-frame{height:160px}}@media(max-width:520px){.brand{font-size:16px}.profile-button #currentUserLabel{display:none}.intro{min-height:570px}.section-heading h2{font-size:32px}.mood-grid{grid-template-columns:1fr}.mood-card{min-height:320px}.gif-frame{height:220px}.composer{padding:28px 20px}.composer-header h2{font-size:39px}.gif-results{grid-template-columns:repeat(3,1fr)}}
 .entry-screen{min-height:calc(100vh - 76px);max-width:1200px;margin:auto;padding:9vh 5vw;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:8vw}.entry-copy h1{font-size:clamp(62px,8vw,118px);line-height:.86;margin:26px 0}.entry-copy h1 em{color:var(--purple);font-style:normal}.entry-copy p{color:var(--muted);font-size:15px;line-height:1.7;max-width:390px}.entry-panel{background:var(--purple);color:white;padding:34px;min-height:235px;box-shadow:12px 12px 0 var(--yellow);transform:rotate(2deg)}.entry-panel-top{font:10px "DM Mono";letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;margin-bottom:60px}.entry-panel h2{font-size:38px;line-height:1;margin:0 0 10px}.entry-panel p{font-size:13px;opacity:.75;margin:0}.entry-panel .primary-button{background:var(--yellow);color:var(--ink);margin-top:22px}.entry-panel .primary-button:hover{background:white}.waiting-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;border:1px dashed var(--purple);margin-bottom:28px;font-size:13px}.waiting-banner strong{font-family:"DM Mono";font-size:11px;color:var(--purple)}@media(max-width:800px){.entry-screen{grid-template-columns:1fr;min-height:calc(100vh - 76px);padding:60px 22px;gap:45px}.entry-copy h1{font-size:70px}.entry-panel{transform:rotate(1deg);max-width:470px}.entry-copy p{font-size:14px}}
 .no-results{grid-column:1/-1;color:var(--muted);font-size:12px;line-height:1.5;margin:12px 0}.gif-results:empty{min-height:75px}
 .modal-backdrop[hidden]{display:none!important}
 .checked-in-list{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0;min-height:38px}.name-chip{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.14);padding:6px 9px 6px 6px;border-radius:30px;font-size:11px;animation:rise .35s both;animation-delay:var(--chip-delay)}.name-chip .avatar-small{background:var(--yellow);color:var(--ink);width:24px;height:24px;font-size:10px}.check{color:var(--yellow);font-weight:800}.waiting-copy{font-size:12px;opacity:.75;margin:8px 0}.reveal-button{display:block;margin:12px auto 0;background:transparent;border:1px solid rgba(255,255,255,.55);color:white;padding:10px 14px;font:11px "DM Mono";cursor:pointer;width:100%}.reveal-button:hover{background:rgba(255,255,255,.12)}
 .secondary-button{background:transparent;border:1px solid rgba(255,255,255,.55);color:white;padding:12px 14px;font:11px "DM Mono";cursor:pointer}.secondary-button:hover{background:rgba(255,255,255,.12)}.reset-button{display:block;width:100%;margin-top:10px;border:0;background:none;color:#ffb0a4;font:10px "DM Mono";cursor:pointer}.admin-delete{margin-left:auto;border:0;background:none;color:#c8423c;cursor:pointer;font-size:15px}.admin-toolbar{display:flex;justify-content:flex-end;margin-bottom:18px}.admin-toolbar button{border:1px solid #c8423c;color:#c8423c;background:transparent;padding:9px 12px;font:10px "DM Mono";cursor:pointer}
