*{box-sizing:border-box;margin:0;padding:0}:root{--green: #16a34a;--green-soft: #dcfce7;--red: #dc2626;--red-soft: #fee2e2;--orange: #f97316;--ink: #1f2937;--muted: #6b7280;--line: #e5e7eb}html,body,#root{height:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink)}.screen{min-height:100%;display:flex;flex-direction:column;transition:background .3s ease}.screen.yes,.screen.no,.screen.other{background:#000}.screen.unknown,.screen.admin{background:#f9fafb}.topbar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem}.date-line{color:var(--muted);font-size:.95rem}.admin-link{color:var(--muted);font-size:.85rem;text-decoration:none;background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:6px}.admin-link:hover{color:var(--ink)}.screen.yes .date-line,.screen.no .date-line,.screen.yes .admin-link,.screen.no .admin-link{color:#9ca3af}.screen.yes .admin-link:hover,.screen.no .admin-link:hover{color:#fff}.logout:hover{color:var(--red)}.mid{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;position:relative;z-index:2}.back-slot{display:flex;align-items:flex-end;justify-content:center;height:2.4rem;margin-bottom:-.6rem}.answer-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.extra-block{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.35rem;width:100%;margin-top:1.5rem;min-height:7rem}.big-answer{font-size:clamp(6rem,30vw,22rem);font-weight:900;line-height:1;letter-spacing:-.02em}.screen.yes .big-answer{color:var(--green)}.screen.no .big-answer{color:var(--red)}.screen.other .big-answer{color:var(--orange)}.screen.unknown .big-answer{color:var(--muted)}.unset-box{text-align:center;display:flex;flex-direction:column;gap:.75rem}.note{font-size:1.25rem;color:#e5e7eb;background:#ffffff14;border:1px solid rgba(255,255,255,.14);padding:.5rem 1rem;border-radius:999px;text-align:center}.notes-list-simple{display:flex;flex-direction:column;gap:.35rem;align-items:center;text-align:center}.note-text-simple{font-size:1.4rem;color:#e5e7eb;font-weight:600;line-height:1.4}.instagram-link-simple{font-size:1.05rem;color:#9ca3af;text-decoration:none;font-weight:600;transition:color .15s ease;margin-top:.5rem}.instagram-link-simple:hover{color:#fff;text-decoration:underline}.note-link{color:#fff;text-decoration:underline;text-underline-offset:4px;cursor:pointer;transition:color .15s ease}.note-link:hover{color:var(--green)}.note-link span{font-size:.85em;opacity:.8}.event-cards{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}.event-card{background:#1f2937;padding:.5rem .8rem;border-radius:8px;color:#e5e7eb;font-size:.95rem;text-decoration:none}.event-card-link{text-decoration:underline;text-underline-offset:3px;cursor:pointer;transition:background .15s ease}.event-card-link:hover{background:#263244}.event-card-link span{font-size:.85em;opacity:.8}.event-editor{display:flex;flex-direction:column;gap:.6rem;margin:.75rem 0}.event-row{display:flex;flex-direction:column;gap:.4rem;padding:.6rem;border:1px solid #2b3446;border-radius:10px;background:#161d2b}.event-row-head{display:flex;align-items:center;justify-content:space-between}.event-row-num{font-size:.75rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.06em}.preview-events{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}.preview-event{background:#1f2937;padding:.5rem .8rem;border-radius:8px;color:#e5e7eb;font-size:.95rem}.preview-event a{color:#fff;text-decoration:underline;text-underline-offset:3px}.preview-event a:hover{color:var(--green)}.event-insta{font-size:1rem;font-weight:700;color:#fff;background:var(--green);padding:.6rem 1.25rem;border-radius:999px;text-decoration:none;box-shadow:0 6px 24px #00000040;transition:filter .15s ease,transform .1s ease}.event-insta:hover{filter:brightness(1.1);transform:scale(1.03)}.corner-nav{position:fixed!important;top:1.25rem!important;right:1.25rem!important;bottom:auto!important;left:auto!important;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;z-index:100}.corner-suggest{border:none;border-radius:999px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700;cursor:pointer;background:#fff;color:#000;box-shadow:0 6px 24px #00000040;transition:transform .1s ease,filter .15s ease}.corner-suggest:hover{filter:brightness(.9);transform:scale(1.03)}.corner-admin{font-size:.85rem;color:#9ca3af;text-decoration:none;padding:.25rem .5rem;border-radius:6px}.corner-admin:hover{color:#fff}.corner-thanks{background:#fff;color:#000;border-radius:999px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700;max-width:min(80vw,420px);box-shadow:0 6px 24px #00000040}.app-version{position:fixed;top:.5rem;left:.7rem;z-index:10;font-size:.6rem;color:#6b7280;opacity:.3;pointer-events:none;-webkit-user-select:none;user-select:none}.btn{border:none;border-radius:12px;padding:.75rem 1.25rem;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .1s ease,filter .15s ease}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:not(:disabled):hover{filter:brightness(.95)}.btn:not(:disabled):active{transform:scale(.98)}.primary-btn{background:var(--ink);color:#fff}.yes-btn{background:var(--green);color:#fff}.no-btn{background:var(--red);color:#fff}.other-btn{background:var(--orange);color:#fff}.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.ghost:hover{color:var(--ink)}.danger:hover{color:var(--red);border-color:var(--red)}.small{padding:.4rem .75rem;font-size:.85rem;border-radius:8px}.error{color:var(--red);font-size:.95rem}.muted{color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:#fff;border-radius:16px;padding:2rem;width:min(90vw,420px);display:flex;flex-direction:column;gap:1rem;box-shadow:0 20px 60px #0000004d}.modal-title{font-size:1.4rem}.modal-sub{color:var(--muted);margin-top:-.5rem}.modal-actions{display:flex;gap:.75rem}.modal-actions .btn{flex:1}.modal-close{align-self:center}.input,.textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.7rem .9rem;font-size:1rem;font-family:inherit}.input:focus,.textarea:focus{outline:2px solid #93c5fd;border-color:transparent}.login-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:2rem;display:flex;flex-direction:column;gap:1rem;width:min(90vw,360px)}.login-title{font-size:1.3rem;text-align:center}.admin-body{flex:1;display:grid;grid-template-columns:minmax(300px,480px) 1fr;gap:1.5rem;padding:1.5rem;align-items:start;max-width:1100px;margin:0 auto;width:100%}.calendar-col,.panel-col{display:flex;flex-direction:column;gap:1rem}.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.calendar-title{font-size:1.2rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.5rem}.cal-weekday{text-align:center;font-size:.75rem;color:var(--muted);padding:.35rem 0;text-transform:capitalize}.cal-empty{min-height:44px}.cal-cell{min-height:44px;border:none;background:transparent;border-radius:10px;font-size:.95rem;font-weight:600;color:var(--ink);cursor:pointer}.cal-cell.has-yes{background:var(--green);color:#fff}.cal-cell.has-no{box-shadow:inset 0 0 0 2px var(--red);color:var(--red)}.cal-cell.today{box-shadow:inset 0 0 0 2px #60a5fa}.cal-cell.selected{box-shadow:inset 0 0 0 3px var(--ink)}.legend{display:flex;gap:1rem;font-size:.8rem;color:var(--muted)}.legend span:before{content:"● "}.legend-yes:before{color:var(--green)}.legend-no:before{color:var(--red)}.legend-other:before{color:var(--orange)}.legend-null:before{color:var(--line)}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:.9rem}.panel-title{font-size:1.05rem}.current-status{font-weight:600}.panel-actions{display:flex;gap:.75rem}.panel-actions .btn{flex:1}.suggestions{list-style:none;display:flex;flex-direction:column;gap:.75rem}.suggestion{border:1px solid var(--line);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.9rem}.suggestion-info{display:flex;flex-direction:column;gap:.45rem}.suggestion-day{font-weight:700}.suggestion-organizer{font-size:.9rem;color:var(--muted)}.suggestion-actions{display:flex;gap:.6rem;flex-wrap:wrap}.panel-head{display:flex;flex-direction:column;gap:.5rem}.seg{display:flex;gap:.5rem}.seg-btn{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:.3rem .75rem;font-size:.8rem;font-weight:600;cursor:pointer}.seg-btn.active{background:var(--green);border-color:var(--green);color:#fff}.suggestion-badge{font-size:.8rem;font-weight:700}.suggestion-badge.confirmed{color:var(--green)}.suggestion-badge.dismissed{color:var(--red)}@media (max-width: 820px){.admin-body{grid-template-columns:1fr}}.screen.unknown,.screen.admin{background:#0a0a0a}.screen.admin .calendar-grid,.screen.admin .panel,.screen.admin .login-card{background:#141414;border-color:#2a2a2a}.screen.admin .cal-cell{color:#e5e7eb}.screen.admin .cal-cell:hover{background:#1f2937}.screen.admin .cal-weekday,.screen.admin .legend{color:#9ca3af}.screen.admin .panel-title,.screen.admin .current-status,.screen.admin .login-title,.screen.admin .suggestion-day{color:#f3f4f6}.screen.admin .input,.screen.admin .textarea,.modal .input{background:#0a0a0a;border-color:#2a2a2a;color:#f3f4f6}.screen.admin .btn.ghost,.modal .btn.ghost{color:#9ca3af;border-color:#2a2a2a}.screen.admin .btn.ghost:hover,.modal .btn.ghost:hover{color:#fff;border-color:#4b5563}.screen.admin .primary-btn{background:#e5e7eb;color:#0a0a0a}.screen.admin .suggestion{border-color:#2a2a2a}.screen.admin .suggestion-organizer,.screen.admin .muted{color:#9ca3af}.suggestion-instagram{font-size:.85rem;color:#60a5fa;text-decoration:none}.suggestion-instagram:hover{text-decoration:underline}.modal{background:#141414;color:#f3f4f6}.modal .modal-sub{color:#9ca3af}.mini-cal{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:12px;padding:.6rem;display:flex;flex-direction:column;gap:.4rem}.mini-cal-nav{display:flex;align-items:center;justify-content:space-between;padding:0 .2rem}.mini-cal-nav .btn{padding:.2rem .6rem;font-size:1.1rem;line-height:1}.mini-cal-title{font-weight:700}.mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.mini-cal-weekday{text-align:center;font-size:.68rem;text-transform:uppercase;color:#9ca3af;padding:.25rem 0}.mini-cal-empty{min-height:36px}.mini-cal-cell{min-height:36px;border:none;background:transparent;border-radius:8px;font-size:.9rem;font-weight:600;color:#f3f4f6;cursor:pointer}.mini-cal-cell:hover:not(:disabled){background:#2a2a2a}.mini-cal-cell:disabled{cursor:default}.mini-cal-cell.past{opacity:.3}.mini-cal-cell.today{box-shadow:inset 0 0 0 2px #60a5fa}.mini-cal-cell.selected{background:var(--green);color:#fff}.mini-cal-date{color:#e5e7eb;font-weight:600;text-align:center;font-size:.95rem}.week-nav-container{display:flex;align-items:center;justify-content:center;gap:.5rem;max-width:540px;margin:0 auto;padding:0 1rem 2.5rem}.week-arrow{background:transparent;border:none;color:#9ca3af;width:40px;height:52px;font-size:1.8rem;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease,transform .1s ease;flex-shrink:0}.week-arrow:hover{color:#fff;transform:scale(1.15)}.week-arrow:active{transform:scale(.95)}@keyframes slideIn{0%{opacity:.4;transform:translate(var(--slide-dir, 10px))}to{opacity:1;transform:translate(0)}}.week.slide-anim{animation:slideIn .2s ease-out}.week{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;max-width:460px;margin:0 auto}.week-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;width:52px;height:52px;border-radius:12px;font-weight:700;color:#fff;transition:transform .1s ease,filter .1s ease}.week-day.clickable{cursor:pointer;text-decoration:none}.week-day.clickable:hover{transform:scale(1.08);filter:brightness(1.1)}.week-day.clickable:active{transform:scale(.96)}.week-day.yes{background:var(--green)}.week-day.no{background:var(--red)}.week-day.other{background:var(--orange)}.cal-cell.has-other{background:var(--orange);color:#fff}.hamburger-container{position:relative}.hamburger-btn{background:#fff;border:none;border-radius:999px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;cursor:pointer;box-shadow:0 6px 24px #00000040;transition:transform .1s ease,filter .15s ease;color:#000}.hamburger-btn:hover{filter:brightness(.9);transform:scale(1.03)}.menu-dropdown{position:absolute;top:52px;right:0;background:#141414;border:1px solid #2a2a2a;border-radius:14px;padding:.5rem;display:flex;flex-direction:column;gap:.35rem;min-width:180px;box-shadow:0 10px 30px #00000080;z-index:50}.menu-item{background:#1a1a1a;border:1px solid #333;color:#f3f4f6;padding:.65rem 1rem;font-size:.9rem;font-weight:600;text-align:left;border-radius:8px;cursor:pointer;text-decoration:none;display:block;transition:background .15s ease,border-color .15s ease}.menu-item:hover{background:#262626;border-color:#555;color:#fff}.events-body{max-width:800px!important}.events-calendar-grid .cal-cell{min-height:80px!important;font-size:1.3rem!important;font-weight:700}.events-calendar-grid .cal-weekday{font-size:.95rem!important;padding:.6rem 0!important}@media (max-width: 768px){.events-body{max-width:100%!important;padding:1rem!important}.events-calendar-grid .cal-cell{min-height:44px!important;font-size:.95rem!important}.events-calendar-grid .cal-weekday{font-size:.75rem!important;padding:.35rem 0!important}}.week-day.today{box-shadow:inset 0 0 0 2px #fff}.week-day.viewing{box-shadow:inset 0 0 0 3px #60a5fa,0 0 12px #60a5fa80;transform:scale(1.05)}.week-day.past{opacity:.4}.week-dow{font-size:.68rem;text-transform:uppercase}.week-num{font-size:1.1rem;line-height:1}@media (max-width: 480px){.week-nav-container{gap:.15rem;padding:0 .3rem 2rem;width:100%;max-width:100%;box-sizing:border-box}.week-arrow{width:24px;min-width:24px;height:38px;font-size:1.1rem;background:transparent;border:none;color:#9ca3af}.week{flex:1 1 auto;min-width:0;gap:.15rem;max-width:100%;flex-wrap:nowrap}.week-day{flex:1 1 0;min-width:0;max-width:42px;width:auto;height:38px;border-radius:8px}.week-num{font-size:.88rem}.week-dow{font-size:.55rem}.extra-block{min-height:5.5rem;margin-top:1rem}.answer-block{gap:1rem}}
