@import"https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--ink:#18181b;--ink-soft:#3f3f46;--paper:#fafafa;--surface:#fff;--muted:#71717a;--line:#e4e4e7;--accent:#2563eb;--accent-dark:#1d4ed8;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.55 Archivo,Arial,sans-serif}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.shell{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.eyebrow{color:var(--accent);font:600 .75rem/1.2 Space Grotesk,sans-serif;letter-spacing:.11em;text-transform:uppercase}.skip-link{position:fixed;top:-80px;left:16px;z-index:20;padding:10px 14px;background:var(--ink);color:#fff;border-radius:6px}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid transparent}.site-header.scrolled{border-color:var(--line)}.nav{height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font:700 1.05rem Space Grotesk,sans-serif;letter-spacing:-.04em}.brand-mark{color:var(--accent)}.nav-links{display:flex;align-items:center;gap:26px;font-size:.9rem}.nav-links a{position:relative;padding:8px 0;color:var(--ink-soft)}.nav-links a.router-link-active{color:var(--ink);font-weight:600}.nav-links a.router-link-active:after{position:absolute;content:"";bottom:1px;left:0;width:100%;height:2px;background:var(--accent)}.nav-cta{padding:9px 13px!important;border:1px solid var(--line);border-radius:5px;color:var(--ink)!important}.menu-button{display:none;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--ink);font-weight:600}.mobile-menu{display:none}.page{min-height:calc(100vh - 250px)}.hero{min-height:calc(100vh - 72px);display:grid;align-content:center;padding:82px 0}.hero-copy{max-width:920px}.hero h1{max-width:900px;margin:20px 0 24px;font:700 clamp(3.5rem,9vw,8.2rem)/.91 "Space Grotesk",sans-serif;letter-spacing:-.07em}.hero h1 em{color:var(--accent);font-style:normal}.lead{max-width:660px;margin:0;color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.3rem)}.hero-links,.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 17px;border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:#fff;font-weight:600;font-size:.9rem;transition:background .18s ease,transform .18s ease,border-color .18s ease}.button:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:#f0f4ff;color:var(--accent-dark);border-color:#c7d2fe}.text-link{display:inline-flex;align-items:center;gap:4px;color:var(--ink-soft);border-bottom:1px solid var(--line);padding:4px 0}.text-link:hover{color:var(--accent);border-color:var(--accent)}.external:after{content:"↗";font-size:.9em;transition:transform .18s ease}.external:hover:after{transform:translate(2px,-2px)}.section{padding:100px 0;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section h2{margin:8px 0 0;font:600 clamp(2.1rem,4vw,4rem)/.96 "Space Grotesk",sans-serif;letter-spacing:-.06em}.section-intro{max-width:480px;color:var(--muted)}.showcase{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:34px;align-items:stretch;padding:28px 0;border-top:1px solid var(--line)}.showcase:last-child{border-bottom:1px solid var(--line)}.showcase:nth-child(2n) .project-visual{order:2}.project-visual{min-height:300px;position:relative;overflow:hidden;display:grid;place-items:end start;padding:26px;background:linear-gradient(145deg,#e0e7ff,#eff6ff 44%,#fff);border-radius:8px}.project-visual:before{content:"";position:absolute;top:13%;right:12%;bottom:13%;left:12%;border:1px solid #a5b4fc;border-radius:5px;background:repeating-linear-gradient(90deg,transparent 0 23%,#c7d2fe 24% 25%)}.project-visual span{position:relative;font:600 1.2rem Space Grotesk}.project-detail{display:flex;flex-direction:column;justify-content:center}.project-detail h3{margin:8px 0 12px;font:600 1.8rem/1 Space Grotesk;letter-spacing:-.05em}.project-detail p{color:var(--ink-soft)}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:.78rem}.project-links{display:flex;gap:16px;margin-top:20px;font-size:.9rem;font-weight:600}.timeline{border-left:1px solid var(--line);margin-left:6px}.timeline-item{position:relative;padding:0 0 36px 28px}.timeline-item:before{position:absolute;content:"";left:-5px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--accent)}.timeline h3{margin:7px 0 4px;font:600 1.25rem Space Grotesk;letter-spacing:-.03em}.timeline p,.timeline li{color:var(--ink-soft)}.timeline ul{padding-left:19px}.toolkit{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tool-group{padding:20px 0;border-top:1px solid var(--line)}.tool-group h3{margin:0 0 13px;font:600 1rem Space Grotesk}.tool-group .tags{gap:6px}.cta{padding:64px;background:var(--ink);color:#fff;border-radius:8px}.cta h2{max-width:650px;margin:10px 0 18px}.cta p{max-width:530px;color:#d4d4d8}.cta .button{background:#fff;color:var(--ink);border-color:#fff}.cta .button:hover{color:#fff;background:var(--accent);border-color:var(--accent)}.page-head{padding:108px 0 58px;max-width:820px}.page-head h1{margin:14px 0 20px;font:600 clamp(3.2rem,7vw,6.4rem)/.91 "Space Grotesk";letter-spacing:-.07em}.page-head .lead{max-width:650px}.body-copy{max-width:730px;color:var(--ink-soft);font-size:1.06rem}.body-copy h2{color:var(--ink)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px}.education-list{display:grid;gap:18px}.education-item{padding:22px 0;border-top:1px solid var(--line)}.education-item h3{margin:7px 0;font:600 1.22rem Space Grotesk}.empty-state{max-width:650px;padding:26px;border:1px dashed #c4c4cc;color:var(--muted);border-radius:7px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project-card{padding:28px;border:1px solid var(--line);border-radius:7px;background:var(--surface);transition:transform .2s ease,box-shadow .2s ease}.project-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px #18181b12}.project-card h2{margin:9px 0;font-size:1.7rem}.case-hero{padding:108px 0 52px}.case-hero h1{max-width:900px;margin:14px 0;font:600 clamp(3.4rem,8vw,7rem)/.9 "Space Grotesk";letter-spacing:-.07em}.case-layout{display:grid;grid-template-columns:2fr 1fr;gap:80px}.case-layout h2{font-size:2rem}.case-aside{height:max-content;position:sticky;top:100px;border-top:1px solid var(--line)}.case-aside div{padding:14px 0;border-bottom:1px solid var(--line)}.case-aside span{display:block;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.form{display:grid;gap:17px;max-width:640px}.field{display:grid;gap:7px;font-size:.9rem;font-weight:600}.field input,.field textarea{width:100%;border:1px solid #c9c9d1;border-radius:5px;padding:12px;background:#fff;color:var(--ink)}.field textarea{min-height:150px;resize:vertical}.notice{padding:14px;background:#eff6ff;color:#1e3a8a;border-left:3px solid var(--accent)}.error{color:#b91c1c;font-weight:600}.resume-frame{width:100%;min-height:760px;border:1px solid var(--line);border-radius:7px;background:#fff}.site-footer{margin-top:80px;padding:42px 0;border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.footer-title{font:600 1.1rem Space Grotesk}.footer-links{display:flex;flex-wrap:wrap;gap:18px;font-size:.88rem}.copyright{color:var(--muted);font-size:.83rem}.draft-note{display:none}@media (max-width:760px){.shell{width:min(100% - 32px,var(--max))}.nav{height:64px}.nav-links{display:none}.menu-button{display:block}.mobile-menu{display:flex;position:fixed;top:64px;right:0;bottom:0;left:0;z-index:9;padding:32px max(16px,calc((100% - var(--max))/2));flex-direction:column;gap:6px;background:var(--paper);transform:translate(100%);opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease}.mobile-menu.open{transform:none;opacity:1;pointer-events:auto}.mobile-menu a{display:flex;align-items:center;min-height:48px;padding:0 5px;border-bottom:1px solid var(--line);font:600 1.35rem Space Grotesk}.mobile-menu .mobile-social{margin-top:20px;display:flex;gap:18px;font:400 .92rem Archivo}.hero{min-height:calc(100svh - 64px);padding:56px 0}.hero h1{font-size:clamp(3.4rem,15vw,5.3rem)}.section{padding:68px 0}.section-head,.footer-inner{display:block}.section-intro{margin-top:18px}.showcase,.two-col,.case-layout{grid-template-columns:1fr;gap:26px}.showcase:nth-child(2n) .project-visual{order:0}.project-visual{min-height:220px}.toolkit,.project-grid{grid-template-columns:1fr 1fr}.cta{padding:34px 26px}.page-head,.case-hero{padding:66px 0 40px}.page-head h1,.case-hero h1{font-size:clamp(3.1rem,14vw,5rem)}.case-aside{position:static}.resume-frame{display:none}.footer-links{margin:18px 0}.draft-note{display:block;margin-top:18px;color:var(--muted);font-size:.78rem}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.chat-page,.admin-chat-page{min-height:calc(100svh - 72px);padding:36px 16px;background:#f4f7fb}.chat-shell{width:min(800px,100%);margin:auto;min-height:calc(100svh - 144px);padding:28px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.chat-header{display:flex;justify-content:space-between;gap:28px;padding-bottom:24px;border-bottom:1px solid var(--line)}.chat-header h1,.admin-chat h1{margin:5px 0 0;font:600 2rem Space Grotesk;letter-spacing:-.06em}.chat-header p{max-width:300px;margin:0;color:var(--muted);font-size:.9rem}.chat-entry{margin:auto 0;max-width:460px;padding:42px 0}.message-list{flex:1;min-height:380px;overflow-y:auto;padding:22px 0;scroll-behavior:smooth}.chat-message{display:flex;flex-direction:column;align-items:flex-start;margin:14px 0}.chat-message.mine{align-items:flex-end}.message-meta{padding:0 5px 4px;color:var(--muted);font-size:.75rem}.bubble{max-width:min(82%,580px);padding:10px 13px;border-radius:8px 8px 8px 2px;background:#f1f5f9;overflow-wrap:anywhere}.mine .bubble{border-radius:8px 8px 2px;background:#dbeafe}.bubble p{margin:0;white-space:pre-wrap}.bubble a{display:block;margin-top:8px}.bubble img{display:block;max-width:100%;max-height:350px;border-radius:5px}.chat-empty{margin:80px 0;color:var(--muted);text-align:center}.new-message-button{align-self:center;border:1px solid #bfdbfe;border-radius:99px;padding:7px 12px;color:#1d4ed8;background:#eff6ff;font-size:.82rem}.chat-composer{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--line)}.chat-composer textarea{min-height:70px;max-height:170px;width:100%;resize:vertical;border:1px solid #c9c9d1;border-radius:6px;padding:11px}.composer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.upload-button{display:inline-flex;min-height:42px;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:5px;font-size:.86rem;font-weight:600;cursor:pointer}.upload-button input{position:absolute;width:1px;height:1px;opacity:0}.image-preview{display:flex;align-items:flex-start;gap:10px}.image-preview img{width:72px;height:72px;border-radius:6px;object-fit:cover}.image-preview button{border:0;padding:5px;background:transparent;color:#b91c1c}.admin-chat{width:min(1060px,calc(100% - 48px));margin:42px auto}.admin-chat-header,.conversation-header{display:flex;justify-content:space-between;gap:24px;align-items:start;margin-bottom:30px}.room-list{border-top:1px solid var(--line)}.room-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:18px 0;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent}.room-row:hover b:first-child{color:var(--accent)}.room-row span{display:grid;gap:3px}.room-row small{color:var(--muted)}.status{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em}.status.active{color:#15803d}.status.disabled,.status.closed,.status.expired{color:#b45309}.room-form{max-width:640px}.room-form select{min-height:44px;padding:0 10px;border:1px solid #c9c9d1;border-radius:5px;background:#fff}.check{display:flex;gap:8px;align-items:center;font-size:.9rem}.created-room{max-width:720px}.created-room h2{font:600 2.3rem/1 Space Grotesk;letter-spacing:-.06em}.secret{display:grid;gap:8px;padding:17px 0;border-top:1px solid var(--line)}.secret span{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.secret code{font-size:1rem;overflow-wrap:anywhere}.secret .button{width:max-content}.admin-conversation{max-width:860px}.conversation-header h2{margin:6px 0;font:600 2.2rem Space Grotesk;letter-spacing:-.06em}.conversation-header p{margin:0;color:var(--muted)}.message-list.owner{min-height:440px;border-top:1px solid var(--line)}@media (max-width:760px){.chat-page,.admin-chat-page{padding:0}.chat-shell{min-height:calc(100svh - 64px);padding:20px 16px;border:0;border-radius:0}.chat-header,.admin-chat-header,.conversation-header{display:block}.chat-header p{margin-top:12px}.admin-chat{width:min(100% - 32px,1060px);margin:28px auto}.admin-chat-header .button,.conversation-header .actions{margin-top:16px}.message-list{min-height:calc(100svh - 340px)}.bubble{max-width:90%}.room-row{gap:12px}.conversation-header .actions{gap:7px}}.chat-page,.admin-chat-page{--chat-blue:#0071e3;--chat-blue-deep:#005bb7;--chat-canvas:#f5f5f7;--chat-surface:rgba(255,255,255,.88);--chat-fill:#f0f1f5;--chat-border:rgba(60,60,67,.14);--chat-secondary:#6e6e73;--chat-danger:#d92d20;--chat-shadow:0 18px 45px rgba(28,28,32,.1),0 2px 8px rgba(28,28,32,.05);min-height:calc(100svh - 72px);padding:clamp(24px,5vw,72px) 20px;background:radial-gradient(circle at 8% 0%,#e8f2ff 0,transparent 28rem),radial-gradient(circle at 92% 8%,#f2ecff 0,transparent 26rem),var(--chat-canvas)}.chat-page .button,.admin-chat-page .button{min-height:46px;padding:0 18px;border:1px solid transparent;border-radius:14px;background:var(--chat-blue);color:#fff;box-shadow:0 1px 1px #0000000a;font-weight:650;letter-spacing:-.01em;transition:background .2s ease,transform .2s ease,box-shadow .2s ease,opacity .2s ease;touch-action:manipulation}.chat-page .button:hover,.admin-chat-page .button:hover{background:var(--chat-blue-deep);border-color:transparent;box-shadow:0 7px 15px #0071e333;transform:translateY(-1px)}.chat-page .button:active,.admin-chat-page .button:active{transform:scale(.98);box-shadow:none}.chat-page .button:disabled,.admin-chat-page .button:disabled{cursor:not-allowed;opacity:.52;transform:none;box-shadow:none}.chat-page .button.secondary,.admin-chat-page .button.secondary{background:var(--chat-fill);border-color:var(--chat-border);color:#1d1d1f;box-shadow:none}.chat-page .button.secondary:hover,.admin-chat-page .button.secondary:hover{background:#e6e7eb;border-color:var(--chat-border);color:#1d1d1f;box-shadow:none}.chat-page .chat-shell{width:min(780px,100%);min-height:calc(100svh - 190px);padding:clamp(22px,4vw,38px);border:1px solid rgba(255,255,255,.8);border-radius:28px;background:var(--chat-surface);box-shadow:var(--chat-shadow);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}.chat-page .chat-header{align-items:flex-start;gap:24px;padding-bottom:26px;border-color:var(--chat-border)}.chat-page .chat-header h1,.admin-chat-page h1{margin:7px 0 0;color:#1d1d1f;font:650 clamp(2rem,5vw,3.25rem)/1.04 Archivo,Arial,sans-serif;letter-spacing:-.055em}.chat-page .chat-header p{max-width:285px;margin:4px 0 0;color:var(--chat-secondary);line-height:1.45}.chat-page .chat-entry{width:min(460px,100%);margin:auto;padding:46px 0}.chat-page .field,.admin-chat-page .field{gap:8px;color:#1d1d1f;font-size:.92rem;font-weight:650}.chat-page .field input,.chat-page .field textarea,.admin-chat-page .field input,.admin-chat-page .field textarea,.admin-chat-page .field select{min-height:48px;border:1px solid var(--chat-border);border-radius:13px;padding:12px 14px;background:#ffffffdb;color:#1d1d1f;box-shadow:inset 0 1px 1px #00000005;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.chat-page .field textarea,.admin-chat-page .field textarea{min-height:120px}.chat-page .field input:focus,.chat-page .field textarea:focus,.admin-chat-page .field input:focus,.admin-chat-page .field textarea:focus,.admin-chat-page .field select:focus{outline:none;border-color:#0071e3bf;background:#fff;box-shadow:0 0 0 4px #0071e329}.chat-page .field small,.admin-chat-page .field small{color:var(--chat-secondary);font-weight:400;line-height:1.4}.pin-field input{font-variant-numeric:tabular-nums;letter-spacing:.24em}.chat-page .error,.admin-chat-page .error{margin:0;padding:11px 13px;border-radius:12px;background:#fff1f0;color:#b42318;font-size:.9rem;font-weight:600}.chat-page .message-list{min-height:400px;padding:24px 2px;scrollbar-color:#c8c8cd transparent}.chat-page .chat-message{margin:17px 0}.chat-page .message-meta{color:var(--chat-secondary);font-size:.76rem}.chat-page .bubble{border:1px solid rgba(60,60,67,.08);border-radius:18px 18px 18px 5px;background:#f0f1f5;box-shadow:0 1px 1px #00000005}.chat-page .mine .bubble{border-color:transparent;border-radius:18px 18px 5px;background:linear-gradient(145deg,#1682ee,#0071e3);color:#fff}.chat-page .new-message-button{padding:8px 14px;border:1px solid rgba(0,113,227,.24);background:#edf6ff;color:var(--chat-blue-deep);box-shadow:0 4px 12px #0071e31f}.chat-page .chat-composer,.admin-chat-page .chat-composer{gap:12px;padding-top:20px;border-color:var(--chat-border)}.chat-page .chat-composer textarea,.admin-chat-page .chat-composer textarea{min-height:78px;border:1px solid var(--chat-border);border-radius:16px;padding:13px 15px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.chat-page .chat-composer textarea:focus,.admin-chat-page .chat-composer textarea:focus{outline:none;border-color:#0071e3bf;box-shadow:0 0 0 4px #0071e329}.chat-page .upload-button,.admin-chat-page .upload-button{min-height:44px;border-radius:12px;border-color:var(--chat-border);background:var(--chat-fill);color:#1d1d1f;transition:background .18s ease,transform .18s ease}.chat-page .upload-button:hover,.admin-chat-page .upload-button:hover{background:#e6e7eb;transform:translateY(-1px)}.admin-auth-card{width:min(460px,100%);margin:clamp(12px,7vh,84px) auto;padding:clamp(26px,5vw,42px);border:1px solid rgba(255,255,255,.82);border-radius:30px;background:var(--chat-surface);box-shadow:var(--chat-shadow);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}.auth-mark,.success-mark{display:grid;width:52px;height:52px;place-items:center;border-radius:17px;color:var(--chat-blue);background:#eaf4ff}.auth-mark svg,.success-mark svg{width:25px;height:25px}.auth-heading{margin:22px 0 30px}.auth-heading h1{margin:7px 0 11px}.auth-heading p{max-width:360px;margin:0;color:var(--chat-secondary)}.auth-form{max-width:none}.auth-form .button{width:100%;margin-top:5px}.admin-console{width:min(1080px,100%);margin:0 auto}.console-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 28px}.console-header h1{margin-bottom:8px}.console-header p{margin:0;color:var(--chat-secondary);font-size:.94rem}.feedback{width:max-content;max-width:100%;margin:0 0 18px;padding:9px 12px;border-radius:10px;background:#edf6ff;color:var(--chat-blue-deep);font-size:.88rem;font-weight:600}.room-panel,.panel-card{border:1px solid rgba(255,255,255,.82);border-radius:28px;background:var(--chat-surface);box-shadow:var(--chat-shadow);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}.room-panel{overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:23px 26px;border-bottom:1px solid var(--chat-border)}.panel-heading h2,.form-heading h2,.created-room h2,.conversation-header h2{margin:0;color:#1d1d1f;font:650 clamp(1.45rem,3vw,2rem)/1.1 Archivo,Arial,sans-serif;letter-spacing:-.045em}.panel-heading span{color:var(--chat-secondary);font-size:.86rem}.admin-chat-page .room-list{border:0}.admin-chat-page .room-row{display:grid;grid-template-columns:46px minmax(0,1fr) max-content;align-items:center;gap:14px;padding:18px 26px;border-bottom:1px solid var(--chat-border);background:transparent;color:#1d1d1f;transition:background .18s ease}.admin-chat-page .room-row:last-child{border-bottom:0}.admin-chat-page .room-row:hover{background:#0071e30e}.admin-chat-page .room-row:active{background:#0071e31a}.room-avatar{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:linear-gradient(145deg,#dff0ff,#e6e2ff);color:#1554a3;font-weight:700}.room-summary{min-width:0;display:grid;gap:2px}.room-summary b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-summary small,.room-state small{overflow:hidden;color:var(--chat-secondary);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.last-message{max-width:52ch}.room-state{display:grid;justify-items:end;gap:4px}.admin-chat-page .status{width:max-content;padding:4px 8px;border-radius:999px;background:#f0f1f5;color:#4b4b50;font-size:.68rem;font-weight:700;letter-spacing:.06em}.admin-chat-page .status.active{background:#e6f8ed;color:#166534}.admin-chat-page .status.disabled,.admin-chat-page .status.closed,.admin-chat-page .status.expired{background:#fff3e5;color:#9a5800}.empty-card{display:grid;gap:12px;max-width:none;margin:24px;border:1px dashed var(--chat-border);border-radius:18px;background:#ffffff8c;color:var(--chat-secondary)}.empty-card strong{color:#1d1d1f;font-size:1rem}.empty-card .button{width:max-content;margin-top:6px}.panel-card{padding:clamp(22px,4vw,36px)}.room-form{max-width:760px}.form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:25px}.form-heading h2{margin-top:6px}.form-heading p,.created-room>p{margin:9px 0 0;color:var(--chat-secondary)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-chat-page .check{align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--chat-border);border-radius:15px;background:#fff}.admin-chat-page .check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--chat-blue)}.admin-chat-page .check span{display:grid;gap:2px}.admin-chat-page .check b{font-size:.92rem}.admin-chat-page .check small{color:var(--chat-secondary);font-size:.82rem}.admin-chat-page .actions{gap:10px;margin-top:6px}.text-button{min-height:44px;padding:0 8px;border:0;background:transparent;color:var(--chat-blue);font-weight:650;transition:opacity .18s ease}.text-button:hover{opacity:.72}.text-button.danger{color:var(--chat-danger)}.created-room{max-width:760px}.created-room .success-mark{margin-bottom:22px;color:#18794e;background:#e8f7ee}.created-room h2{margin-top:7px;font-size:clamp(1.8rem,4vw,2.5rem)}.share-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(190px,.7fr);gap:14px;margin-top:28px}.admin-chat-page .secret{min-width:0;gap:10px;padding:18px;border:1px solid var(--chat-border);border-radius:18px;background:#fff}.admin-chat-page .secret span{color:var(--chat-secondary);font-size:.72rem;font-weight:700;letter-spacing:.08em}.admin-chat-page .secret code{min-height:42px;padding:10px 11px;border-radius:10px;background:var(--chat-fill);color:#1d1d1f;font-family:SF Mono,Menlo,monospace;font-size:.84rem;overflow-wrap:anywhere}.admin-chat-page .pin-secret code{font-size:1.35rem;letter-spacing:.16em;text-align:center}.admin-chat-page .secret .button{width:100%}.expiry{font-size:.88rem}.admin-chat-page .admin-conversation{max-width:900px}.admin-chat-page .conversation-header{padding-bottom:22px;border-bottom:1px solid var(--chat-border)}.admin-chat-page .conversation-header h2{margin:6px 0}.admin-chat-page .conversation-header p{color:var(--chat-secondary)}.admin-chat-page .message-list.owner{min-height:390px;border-top:0}.admin-chat-page .bubble{border:1px solid rgba(60,60,67,.08);border-radius:18px 18px 18px 5px;background:#f0f1f5}.admin-chat-page .mine .bubble{border-color:transparent;border-radius:18px 18px 5px;background:linear-gradient(145deg,#1682ee,#0071e3);color:#fff}.admin-chat-page .message-meta{color:var(--chat-secondary)}@media (max-width:760px){.chat-page,.admin-chat-page{padding:18px 12px 28px}.chat-page .chat-shell,.admin-auth-card{min-height:auto;border-radius:24px}.chat-page .chat-header,.console-header,.form-heading,.admin-chat-page .conversation-header{display:block}.chat-page .chat-header p{max-width:340px;margin-top:14px}.chat-page .message-list{min-height:calc(100svh - 370px)}.console-header .button,.form-heading .text-button,.admin-chat-page .conversation-header .actions{margin-top:18px}.panel-heading,.admin-chat-page .room-row{padding-inline:18px}.admin-chat-page .room-row{grid-template-columns:42px minmax(0,1fr)}.room-state{grid-column:2;justify-items:start;grid-auto-flow:column;justify-content:start;gap:8px}.form-grid,.share-grid{grid-template-columns:1fr}.panel-card{border-radius:24px}.admin-chat-page .message-list.owner{min-height:calc(100svh - 455px)}.admin-chat-page .conversation-header .actions{gap:6px}.admin-chat-page .conversation-header .actions .text-button{min-height:42px}.auth-heading h1,.chat-page .chat-header h1,.admin-chat-page h1{font-size:clamp(2rem,10vw,2.75rem)}}.schedule-admin-page,.schedule-poll-page{--schedule-blue:#0071e3;--schedule-blue-dark:#005bb7;--schedule-canvas:#f5f5f7;--schedule-surface:rgba(255,255,255,.9);--schedule-fill:#f0f1f5;--schedule-line:rgba(60,60,67,.15);--schedule-muted:#6e6e73;--schedule-danger:#b42318;min-height:calc(100svh - 72px);padding:clamp(26px,5vw,68px) 20px;background:var(--schedule-canvas)}.schedule-admin-shell,.schedule-create-shell,.schedule-results-shell,.schedule-public-shell{width:min(1120px,100%);margin:auto}.schedule-create-shell{width:min(800px,100%)}.schedule-poll-page{background:linear-gradient(180deg,#f7fbff 0,#f5f5f7 280px)}.schedule-public-shell{width:min(960px,100%)}.schedule-admin-page .button,.schedule-poll-page .button{min-height:46px;padding:0 17px;border:1px solid transparent;border-radius:13px;background:var(--schedule-blue);color:#fff;font-weight:650;transition:background .18s ease,transform .18s ease,box-shadow .18s ease,opacity .18s ease;touch-action:manipulation}.schedule-admin-page .button:hover,.schedule-poll-page .button:hover{background:var(--schedule-blue-dark);box-shadow:0 6px 14px #0071e330;transform:translateY(-1px)}.schedule-admin-page .button:active,.schedule-poll-page .button:active{transform:scale(.98)}.schedule-admin-page .button:disabled,.schedule-poll-page .button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none;transform:none}.schedule-admin-page .button.secondary,.schedule-poll-page .button.secondary{border-color:var(--schedule-line);background:var(--schedule-fill);color:#1d1d1f;box-shadow:none}.schedule-admin-page .button.secondary:hover,.schedule-poll-page .button.secondary:hover{background:#e5e5ea;color:#1d1d1f}.schedule-console-header,.schedule-results-header,.schedule-public-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.schedule-console-header h1,.schedule-results-header h1,.schedule-create-card h1,.schedule-created-card h1,.schedule-public-header h1{margin:7px 0 9px;color:#1d1d1f;font:650 clamp(2.15rem,5vw,3.5rem)/1.02 Archivo,Arial,sans-serif;letter-spacing:-.06em}.schedule-console-header p,.schedule-results-header p,.schedule-create-card header>p,.schedule-created-card>p,.schedule-public-header>div>p{max-width:580px;margin:0;color:var(--schedule-muted)}.schedule-panel,.schedule-create-card,.schedule-created-card,.schedule-public-card,.schedule-participant-card,.schedule-selection-card,.schedule-confirmed,.schedule-closed,.schedule-final-meeting{border:1px solid rgba(255,255,255,.85);border-radius:24px;background:var(--schedule-surface);box-shadow:0 12px 35px #1c1c2014,0 2px 7px #1c1c200a;-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%)}.schedule-panel{overflow:hidden}.schedule-panel-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;border-bottom:1px solid var(--schedule-line)}.schedule-panel-header h2,.schedule-create-card h2,.schedule-results-sidebar h2,.schedule-confirmed h2,.schedule-closed h2,.schedule-participant-card h2,.schedule-selection-card h2{margin:0;color:#1d1d1f;font:650 clamp(1.3rem,3vw,1.75rem)/1.14 Archivo,Arial,sans-serif;letter-spacing:-.035em}.schedule-panel-header p{margin:4px 0 0;color:var(--schedule-muted);font-size:.86rem}.schedule-panel-header span{color:var(--schedule-muted);font-size:.84rem}.text-button{min-height:44px;padding:0 8px;border:0;background:transparent;color:var(--schedule-blue);font-weight:650;transition:opacity .18s ease}.text-button:hover{opacity:.7}.text-button.danger{color:var(--schedule-danger)}.schedule-event-list{display:grid}.schedule-event-row{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(110px,.55fr) minmax(230px,1fr);align-items:center;gap:24px;padding:18px 24px;border-bottom:1px solid var(--schedule-line);transition:background .18s ease}.schedule-event-row:last-child{border-bottom:0}.schedule-event-row:hover{background:#0071e30e}.schedule-event-row span{display:grid;gap:4px;min-width:0}.schedule-event-row b{overflow:hidden;color:#1d1d1f;text-overflow:ellipsis;white-space:nowrap}.schedule-event-row small{overflow:hidden;color:var(--schedule-muted);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.schedule-best{justify-items:start}.schedule-status{width:max-content;padding:4px 8px;border-radius:999px;background:#e8f7ed;color:#17643a!important;font-size:.68rem;letter-spacing:.06em}.schedule-status.confirmed{background:#e7f1ff;color:#0757b8!important}.schedule-status.closed,.schedule-status.expired,.schedule-status.cancelled{background:#fff1e5;color:#974f00!important}.schedule-empty,.schedule-loading{display:grid;justify-items:start;gap:10px;padding:34px 26px;color:var(--schedule-muted)}.schedule-empty strong{color:#1d1d1f}.schedule-empty p{margin:0}.schedule-error{margin:0 0 18px;padding:12px 14px;border-radius:13px;background:#fff1f0;color:var(--schedule-danger);font-weight:600}.schedule-error a{text-decoration:underline}.schedule-feedback{width:max-content;max-width:100%;margin:0 0 16px;padding:9px 12px;border-radius:10px;background:#eaf4ff;color:#0757b8;font-size:.88rem;font-weight:600}.schedule-back{display:inline-flex;min-height:44px;align-items:center;margin:0 0 18px;color:var(--schedule-blue);font-size:.9rem;font-weight:650}.schedule-back:before{content:"‹";margin-right:6px;font-size:1.4rem;line-height:0}.schedule-create-card,.schedule-created-card{padding:clamp(24px,5vw,46px)}.schedule-create-card header,.schedule-created-card>p{margin-bottom:34px}.schedule-form-section{display:grid;gap:16px;margin:34px 0;padding-top:30px;border-top:1px solid var(--schedule-line)}.schedule-form-section h2{margin-bottom:2px}.schedule-admin-page .field,.schedule-poll-page .field{gap:8px;color:#1d1d1f;font-size:.92rem;font-weight:650}.schedule-admin-page .field input,.schedule-admin-page .field textarea,.schedule-admin-page .field select,.schedule-poll-page .field input,.schedule-poll-page .field select{min-height:47px;border:1px solid var(--schedule-line);border-radius:12px;padding:11px 13px;background:#ffffffe6;color:#1d1d1f;transition:border-color .18s ease,box-shadow .18s ease}.schedule-admin-page .field textarea{min-height:116px}.schedule-admin-page .field input:focus,.schedule-admin-page .field textarea:focus,.schedule-admin-page .field select:focus,.schedule-poll-page .field input:focus,.schedule-poll-page .field select:focus{outline:none;border-color:#0071e3bf;box-shadow:0 0 0 4px #0071e326}.schedule-admin-page .field small,.schedule-poll-page .field small{color:var(--schedule-muted);font-weight:400;line-height:1.35}.schedule-two-col,.schedule-three-col{display:grid;gap:16px}.schedule-two-col{grid-template-columns:1fr 1fr}.schedule-three-col{grid-template-columns:1fr 1fr 1fr}.schedule-date-picker{display:flex;align-items:end;gap:12px}.schedule-date-picker .field{flex:1}.date-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:32px}.date-chip{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:5px 6px 5px 10px;border:1px solid #cce2ff;border-radius:999px;background:#eef6ff;color:#0757b8;font-size:.82rem;font-weight:600}.date-chip button{min-height:28px;border:0;border-radius:999px;padding:0 8px;background:#dceeff;color:#0757b8;font-size:.75rem;font-weight:650}.schedule-hint{color:var(--schedule-muted);font-size:.88rem}.schedule-check{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--schedule-line);border-radius:14px;background:#fff}.schedule-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--schedule-blue)}.schedule-check span{display:grid;gap:3px}.schedule-check b{color:#1d1d1f;font-size:.92rem}.schedule-check small{color:var(--schedule-muted);font-size:.82rem}.schedule-create-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding-top:26px;border-top:1px solid var(--schedule-line)}.schedule-success,.schedule-confirmed-mark{display:grid;width:52px;height:52px;place-items:center;margin-bottom:20px;border-radius:17px;color:#18794e;background:#e8f7ee}.schedule-success svg,.schedule-confirmed-mark svg{width:26px;height:26px}.schedule-share-box{display:grid;gap:10px;margin:26px 0 16px;padding:18px;border:1px solid var(--schedule-line);border-radius:18px;background:#fff}.schedule-share-box span{color:var(--schedule-muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.schedule-share-box code{padding:11px;border-radius:10px;background:var(--schedule-fill);color:#1d1d1f;overflow-wrap:anywhere}.schedule-share-box .button{width:max-content}.schedule-meta{color:var(--schedule-muted);font-size:.88rem}.schedule-results-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.7fr);align-items:start;gap:18px}.schedule-results-main,.schedule-results-sidebar{display:grid;gap:18px}.schedule-final-meeting{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:22px 24px;background:#eef7ff;border-color:#d5e9ff}.schedule-final-meeting h2{margin:7px 0}.schedule-final-meeting p{margin:0;color:var(--schedule-muted)}.availability-grid-wrap{padding:20px 24px 24px}.date-tabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin}.date-tabs button{flex:0 0 auto;min-height:40px;padding:0 12px;border:1px solid var(--schedule-line);border-radius:10px;background:#fff;color:#3a3a3c;font-size:.82rem;font-weight:650}.date-tabs button.active{border-color:#b9dbff;background:#eaf4ff;color:#0757b8}.availability-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.day-column{min-width:0;border:1px solid var(--schedule-line);border-radius:16px;overflow:hidden;background:#fff}.day-column>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;border-bottom:1px solid var(--schedule-line)}.day-column header>div:first-child{display:grid;gap:1px}.day-column header strong{color:#1d1d1f;font-size:.9rem}.day-column header small{color:var(--schedule-muted);font-size:.72rem}.day-tools{display:flex;gap:4px}.day-tools button{min-height:30px;border:0;border-radius:7px;padding:0 7px;background:var(--schedule-fill);color:#0757b8;font-size:.72rem;font-weight:650}.slot-list{display:grid;padding:7px;gap:5px}.slot-button{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:8px;border:1px solid transparent;border-radius:10px;padding:0 10px;background:var(--schedule-fill);color:#1d1d1f;font-size:.84rem;font-variant-numeric:tabular-nums;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.slot-button:hover{border-color:#b9dbff;background:#eaf4ff}.slot-button:active{transform:scale(.985)}.slot-button.selected{border-color:var(--schedule-blue);background:var(--schedule-blue);color:#fff}.slot-button.heat{background:color-mix(in srgb,#bfddff var(--heat),#fff);border-color:#0071e31a}.slot-button.heat:hover{border-color:var(--schedule-blue)}.slot-button b{font-size:.76rem}.slot-button i{font-style:normal;font-size:.72rem;opacity:.78}.schedule-slot-inspector{margin:0 24px 24px;padding:15px;border:1px solid #cce2ff;border-radius:15px;background:#eef6ff}.schedule-slot-inspector header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.schedule-slot-inspector header div{display:grid;gap:3px}.schedule-slot-inspector small{color:var(--schedule-muted)}.schedule-slot-inspector p{margin:11px 0 0;color:#1d1d1f}.owner-availability .availability-grid-wrap{max-height:520px;overflow:auto}.best-time-list,.participant-list{display:grid}.best-time-list article{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--schedule-line)}.best-rank,.participant-initial{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:#eaf4ff;color:#0757b8;font-size:.76rem;font-weight:700}.best-time-list article div,.participant-list article div{display:grid;gap:3px;min-width:0}.best-time-list b,.participant-list b{overflow:hidden;color:#1d1d1f;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.best-time-list small,.participant-list small{color:var(--schedule-muted);font-size:.76rem}.participant-list article{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--schedule-line)}.schedule-admin-actions{display:grid;gap:12px;padding:20px 22px}.schedule-admin-actions h2{margin:0}.schedule-admin-actions p{margin:0;color:var(--schedule-muted);font-size:.84rem}.schedule-public-header{align-items:flex-start}.timezone-card{display:grid;gap:5px;min-width:min(310px,100%);padding:13px;border:1px solid var(--schedule-line);border-radius:15px;background:#ffffffc2}.timezone-card span,.timezone-card small{color:var(--schedule-muted);font-size:.75rem}.timezone-card select{min-height:35px;border:0;padding:0;background:transparent;color:#1d1d1f;font-weight:650}.schedule-confirmed{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px;margin-bottom:18px;background:#eef7ff;border-color:#d5e9ff}.schedule-confirmed .schedule-confirmed-mark{margin:0}.schedule-confirmed h2{margin:6px 0}.schedule-confirmed p{margin:4px 0;color:var(--schedule-muted)}.confirmed-actions{display:grid;gap:8px}.schedule-closed{padding:clamp(24px,5vw,46px)}.schedule-closed h2{margin:7px 0}.schedule-closed p{color:var(--schedule-muted)}.schedule-participant-card,.schedule-selection-card{padding:clamp(22px,4vw,34px)}.schedule-participant-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(300px,1.15fr);gap:32px}.schedule-participant-card h2{margin-bottom:8px}.schedule-participant-card p,.schedule-selection-card header p{margin:0;color:var(--schedule-muted)}.schedule-name-form{display:grid;gap:15px}.schedule-name-form .button{width:max-content}.schedule-selection-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.schedule-selection-card .availability-grid-wrap{padding:0}.schedule-sticky-submit{position:sticky;bottom:max(12px,env(safe-area-inset-bottom));z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:20px;padding:12px;border:1px solid var(--schedule-line);border-radius:16px;background:#fffffff0;box-shadow:0 10px 28px #1c1c201f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--schedule-muted);font-size:.88rem}.schedule-public-error h1{margin:8px 0}.schedule-public-error p{color:var(--schedule-muted)}@media (max-width:840px){.schedule-results-layout{grid-template-columns:1fr}.schedule-results-sidebar{grid-template-columns:1fr 1fr}.schedule-admin-actions{grid-column:1/-1}.schedule-public-header,.schedule-confirmed,.schedule-final-meeting{display:block}.timezone-card,.confirmed-actions,.schedule-final-meeting .actions{margin-top:16px}.confirmed-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-confirmed .schedule-confirmed-mark{margin-bottom:15px}.schedule-event-row{grid-template-columns:minmax(0,1fr) auto}.schedule-best{grid-column:1/-1}.schedule-best small{display:none}}@media (max-width:620px){.schedule-admin-page,.schedule-poll-page{padding:20px 12px 32px}.schedule-console-header,.schedule-results-header,.schedule-create-actions,.schedule-selection-card>header{display:block}.schedule-console-header .actions,.schedule-results-header .actions,.schedule-create-actions .button,.schedule-create-actions a{margin-top:14px}.schedule-panel-header,.availability-grid-wrap{padding-inline:16px}.schedule-event-row{padding:16px;grid-template-columns:minmax(0,1fr) auto;gap:12px}.schedule-event-row .schedule-best{display:none}.schedule-two-col,.schedule-three-col,.schedule-participant-card,.schedule-results-sidebar{grid-template-columns:1fr}.schedule-date-picker{align-items:stretch;flex-direction:column}.schedule-date-picker .button,.schedule-share-box .button,.schedule-name-form .button{width:100%}.availability-days{display:block}.day-column{display:none}.day-column.active{display:block}.date-tabs{margin-bottom:0}.schedule-selection-card{padding:20px 16px}.schedule-sticky-submit{padding:10px}.best-time-list article{padding-inline:14px}.schedule-public-header h1,.schedule-create-card h1,.schedule-created-card h1,.schedule-results-header h1{font-size:clamp(2rem,11vw,2.8rem)}}.slot-button .slot-names{max-width:100%;overflow:hidden;color:inherit;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.schedule-date-status{margin:0;color:#18794e;font-size:.84rem;font-weight:650}.schedule-error-prominent{margin:0 0 26px;border:1px solid #ffc9c4;box-shadow:0 8px 22px #b4231814}.wheel-admin-page,.wheel-public-page{--wheel-blue:#0a6ee8;--wheel-blue-dark:#0057bf;--wheel-canvas:#f5f7fb;--wheel-surface:rgba(255,255,255,.9);--wheel-line:rgba(60,60,67,.16);--wheel-muted:#6e6e73;--wheel-ink:#1d1d1f;min-height:calc(100svh - 72px);padding:clamp(28px,5vw,68px) 20px;background:var(--wheel-canvas)}.wheel-public-page{background:radial-gradient(circle at 15% 12%,#e4f0ff 0,transparent 31%),radial-gradient(circle at 88% 20%,#eeeaff 0,transparent 30%),#f6f7fa}.wheel-admin-shell{width:min(1120px,100%);margin:auto}.wheel-public-shell{width:min(960px,100%);margin:auto}.wheel-admin-page .button,.wheel-public-page .button{min-height:46px;padding:0 17px;border:1px solid transparent;border-radius:13px;background:var(--wheel-blue);color:#fff;font-weight:650;transition:background .2s ease,transform .2s ease,box-shadow .2s ease,opacity .2s ease;touch-action:manipulation}.wheel-admin-page .button:hover,.wheel-public-page .button:hover{background:var(--wheel-blue-dark);box-shadow:0 7px 16px #0a6ee833;transform:translateY(-1px)}.wheel-admin-page .button:active,.wheel-public-page .button:active{transform:scale(.985)}.wheel-admin-page .button:disabled,.wheel-public-page .button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.wheel-admin-page .button.secondary,.wheel-public-page .button.secondary{border-color:var(--wheel-line);background:#ffffffbf;color:var(--wheel-ink);box-shadow:none}.wheel-admin-page .button.secondary:hover,.wheel-public-page .button.secondary:hover{background:#fff;color:var(--wheel-blue)}.wheel-console-header,.wheel-public-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.wheel-console-header h1,.wheel-public-header h1{margin:7px 0 9px;color:var(--wheel-ink);font:650 clamp(2.15rem,5vw,3.55rem)/1.02 Archivo,Arial,sans-serif;letter-spacing:-.06em}.wheel-console-header p,.wheel-public-header p,.wheel-create-card>div>p,.wheel-join-card p,.wheel-result p,.wheel-created-card p,.wheel-list-card header p{max-width:570px;margin:0;color:var(--wheel-muted)}.wheel-feedback{width:max-content;max-width:100%;margin:0 0 18px;padding:11px 13px;border:1px solid #ffd1cc;border-radius:13px;background:#fff1f0;color:#b42318;font-size:.9rem;font-weight:650}.wheel-created-card,.wheel-create-card,.wheel-list-card,.wheel-join-card,.wheel-stage-card,.wheel-options-card{border:1px solid rgba(255,255,255,.92);border-radius:26px;background:var(--wheel-surface);box-shadow:0 18px 42px #1f2d3d14,0 2px 7px #1f2d3d0a;-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%)}.wheel-created-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;margin-bottom:18px;padding:24px}.wheel-created-card h2,.wheel-create-card h2,.wheel-list-card h2,.wheel-join-card h2,.wheel-stage-card h2,.wheel-options-card h2{margin:5px 0 8px;color:var(--wheel-ink);font:650 clamp(1.35rem,3vw,1.9rem)/1.12 Archivo,Arial,sans-serif;letter-spacing:-.04em}.wheel-created-icon,.wheel-lock-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:17px;background:#eaf3ff;color:var(--wheel-blue)}.wheel-created-icon svg,.wheel-lock-icon svg{width:26px;height:26px}.wheel-share-row{grid-column:2;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.wheel-share-row code{flex:1 1 360px;min-width:0;padding:11px 12px;border-radius:11px;background:#f0f2f6;color:var(--wheel-ink);font-size:.82rem;overflow-wrap:anywhere}.wheel-admin-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start;gap:18px}.wheel-create-card{display:grid;gap:22px;padding:clamp(24px,4vw,36px)}.wheel-admin-page .field,.wheel-public-page .field{display:grid;gap:8px;color:var(--wheel-ink);font-size:.92rem;font-weight:650}.wheel-admin-page .field i{color:var(--wheel-muted);font-style:normal;font-weight:400}.wheel-admin-page .field input,.wheel-admin-page .field textarea,.wheel-public-page .field input{min-height:48px;border:1px solid var(--wheel-line);border-radius:13px;padding:11px 13px;background:#fffffff0;color:var(--wheel-ink);font:inherit;transition:border-color .2s ease,box-shadow .2s ease}.wheel-admin-page .field textarea{min-height:132px;resize:vertical}.wheel-admin-page .field input:focus,.wheel-admin-page .field textarea:focus,.wheel-public-page .field input:focus{outline:none;border-color:#0a6ee8c7;box-shadow:0 0 0 4px #0a6ee824}.wheel-admin-page .field small{color:var(--wheel-muted);font-weight:400;line-height:1.4}.wheel-create-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid var(--wheel-line);color:var(--wheel-muted);font-size:.84rem}.wheel-list-card{overflow:hidden}.wheel-list-card>header,.wheel-options-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid var(--wheel-line)}.wheel-list-card header h2,.wheel-options-card header h2{margin:0}.wheel-list-card header p{margin-top:5px;font-size:.85rem}.wheel-list{display:grid}.wheel-list article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 24px;border-bottom:1px solid var(--wheel-line)}.wheel-list article:last-child{border-bottom:0}.wheel-list article>div:first-child{display:grid;min-width:0;gap:4px}.wheel-list b{overflow:hidden;color:var(--wheel-ink);text-overflow:ellipsis;white-space:nowrap}.wheel-list small{color:var(--wheel-muted);font-size:.8rem}.wheel-list-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:7px}.wheel-state,.wheel-member{display:inline-flex;min-height:27px;align-items:center;border-radius:999px;padding:0 9px;background:#e8f7ed;color:#17643a;font-size:.74rem;font-weight:700}.wheel-state.closed{background:#f1f1f4;color:#6e6e73}.wheel-empty{display:grid;justify-items:start;gap:8px;padding:31px 24px;color:var(--wheel-muted)}.wheel-empty strong{color:var(--wheel-ink)}.wheel-empty p{margin:0}.wheel-back{display:inline-flex;min-height:38px;align-items:center;margin-bottom:16px;color:var(--wheel-blue);font-size:.88rem;font-weight:700}.wheel-join-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px;padding:clamp(24px,5vw,42px)}.wheel-join-form{grid-column:2;display:flex;align-items:end;gap:10px;max-width:520px}.wheel-join-form .field{flex:1}.wheel-stage-card{padding:clamp(24px,5vw,42px)}.wheel-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:26px}.wheel-stage-head h2{margin-bottom:0}.wheel-member{background:#edf5ff;color:#0757b8}.wheel-layout{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(230px,.8fr);align-items:center;gap:clamp(26px,6vw,70px)}.wheel-wrap{position:relative;width:min(100%,430px);aspect-ratio:1;justify-self:center;padding:11px;border-radius:50%;background:#fff;box-shadow:0 20px 45px #16315224,inset 0 0 0 1px #16315214}.wheel-disc{position:relative;width:100%;height:100%;border-radius:50%;transition:transform 2.6s cubic-bezier(.14,.84,.19,1);will-change:transform}.wheel-disc:after{position:absolute;top:16px;right:16px;bottom:16px;left:16px;border:1px solid rgba(255,255,255,.5);border-radius:50%;content:""}.wheel-pointer{position:absolute;z-index:2;top:-6px;left:50%;width:0;height:0;border-right:15px solid transparent;border-left:15px solid transparent;border-top:31px solid #1d1d1f;filter:drop-shadow(0 3px 3px rgba(0,0,0,.18));transform:translate(-50%)}.wheel-hub{position:absolute;z-index:1;top:50%;left:50%;display:grid;width:34%;height:34%;place-items:center;border:7px solid #fff;border-radius:50%;padding:8px;background:#f8fafc;box-shadow:0 3px 11px #0000001f;color:var(--wheel-ink);font-size:clamp(.68rem,1.5vw,.88rem);font-weight:750;line-height:1.1;text-align:center;transform:translate(-50%,-50%) rotate(calc(-1 * var(--wheel-rotation,0deg)))}.wheel-result{display:grid;justify-items:start;gap:15px}.wheel-result h3{margin:0;color:var(--wheel-ink);font:650 clamp(1.65rem,4vw,2.25rem)/1.04 Archivo,Arial,sans-serif;letter-spacing:-.05em}.wheel-winner{display:grid;gap:7px}.wheel-winner span{color:var(--wheel-blue);font-size:.75rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.wheel-winner strong{color:var(--wheel-ink);font:650 clamp(1.8rem,4vw,2.65rem)/1.02 Archivo,Arial,sans-serif;letter-spacing:-.055em;overflow-wrap:anywhere}.wheel-spin-button{min-width:166px}.wheel-options-card{overflow:hidden;margin-top:18px}.wheel-options-card>header>span{color:var(--wheel-muted);font-size:.84rem}.wheel-add-form{display:flex;gap:10px;padding:18px 24px;border-bottom:1px solid var(--wheel-line);background:#f6f9febf}.wheel-add-form .field{flex:1}.wheel-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 24px 24px}.wheel-option-grid article{display:flex;align-items:center;gap:11px;min-width:0;padding:12px;border:1px solid var(--wheel-line);border-radius:14px;background:#fff}.wheel-option-grid i{display:block;flex:0 0 auto;width:11px;height:11px;border-radius:50%}.wheel-option-grid article div{display:grid;min-width:0;gap:3px}.wheel-option-grid b{overflow:hidden;color:var(--wheel-ink);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.wheel-option-grid small{color:var(--wheel-muted);font-size:.75rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media (max-width:760px){.wheel-admin-page,.wheel-public-page{padding:22px 12px 34px}.wheel-console-header,.wheel-public-header,.wheel-stage-head{display:block}.wheel-console-header .actions,.wheel-public-header .button,.wheel-stage-head .wheel-member{margin-top:16px}.wheel-admin-grid,.wheel-layout,.wheel-created-card,.wheel-join-card{grid-template-columns:1fr}.wheel-share-row,.wheel-join-form{grid-column:auto}.wheel-share-row,.wheel-join-form,.wheel-add-form{align-items:stretch;flex-direction:column}.wheel-share-row .button,.wheel-join-form .button,.wheel-add-form .button{width:100%}.wheel-layout{gap:32px}.wheel-option-grid{grid-template-columns:1fr}.wheel-list article{align-items:flex-start;flex-direction:column}.wheel-list-actions{justify-content:flex-start}.wheel-public-header h1,.wheel-console-header h1{font-size:clamp(2.25rem,12vw,3.35rem)}}.wheel-wrap{box-sizing:border-box;inline-size:min(100%,430px);block-size:auto;aspect-ratio:1 / 1;align-self:center}.wheel-disc{aspect-ratio:1 / 1;overflow:hidden;transform-origin:center;transition-duration:4s;transition-timing-function:cubic-bezier(.08,.78,.16,1)}.wheel-disc:after{z-index:1}.wheel-pointer{z-index:4}.wheel-slice-label{position:absolute;z-index:2;width:29%;max-width:120px;padding:3px 6px;border-radius:8px;background:#0914286b;color:#fff;font-size:clamp(.66rem,1.5vw,.92rem);font-weight:750;line-height:1.12;overflow-wrap:anywhere;pointer-events:none;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.25)}.wheel-hub{z-index:3}.wheel-live-options{display:flex;flex-wrap:wrap;gap:7px}.wheel-live-options span{display:inline-flex;max-width:100%;min-height:32px;align-items:center;gap:6px;border:1px solid var(--wheel-line);border-radius:999px;padding:5px 9px;background:#fff;color:var(--wheel-ink);font-size:.78rem;font-weight:650;overflow-wrap:anywhere}.wheel-live-options i{display:block;flex:0 0 auto;width:8px;height:8px;border-radius:50%}.wheel-history-card{overflow:hidden;margin-top:18px;border:1px solid rgba(255,255,255,.92);border-radius:26px;background:var(--wheel-surface);box-shadow:0 18px 42px #1f2d3d14,0 2px 7px #1f2d3d0a;-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%)}.wheel-history-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid var(--wheel-line)}.wheel-history-card h2{margin:0;color:var(--wheel-ink);font:650 clamp(1.35rem,3vw,1.9rem)/1.12 Archivo,Arial,sans-serif;letter-spacing:-.04em}.wheel-history-card>header>span{color:var(--wheel-muted);font-size:.84rem}.wheel-history-card ol{display:grid;margin:0;padding:0;list-style:none}.wheel-history-card li{display:grid;gap:3px;padding:15px 24px;border-bottom:1px solid var(--wheel-line)}.wheel-history-card li:last-child{border-bottom:0}.wheel-history-card strong{color:var(--wheel-ink)}.wheel-history-card li span{color:var(--wheel-muted);font-size:.82rem}@media (max-width:760px){.wheel-slice-label{width:32%;font-size:.68rem}.wheel-history-card>header{align-items:flex-start;flex-direction:column}.wheel-history-card>header>span{margin:0}}@media (max-width:480px){.wheel-stage-card{padding:20px 14px}.wheel-stage-head{margin-bottom:20px}.wheel-layout{gap:24px}.wheel-wrap{inline-size:min(100%,360px);padding:8px}.wheel-result{justify-items:stretch}.wheel-spin-button{width:100%;min-width:0}.wheel-live-options{gap:6px}.wheel-live-options span{min-height:30px;padding:4px 8px;font-size:.74rem}}.showcase:has(.project-visual.has-image){grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}.showcase:has(.project-visual.has-image) .project-visual{order:0}.project-visual.has-image{min-height:clamp(360px,38vw,520px);padding:0;border:1px solid var(--line);background:#f6f3ed;box-shadow:0 12px 28px #18181b14}.project-visual.has-image:before{display:none}.project-image{width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:center}a.project-visual.has-image{display:block;color:inherit;cursor:pointer;isolation:isolate;transition:box-shadow .2s ease,transform .2s ease}.project-image-link{position:absolute;z-index:1;right:16px;bottom:16px;display:inline-flex;align-items:center;min-height:44px;border-radius:999px;padding:0 15px;background:#18181be6;color:#fff;font:600 .82rem Space Grotesk,sans-serif;opacity:0;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease}.project-image-link span{font:inherit}.project-visual.has-image:hover,.project-visual.has-image:focus-visible{box-shadow:0 18px 34px #18181b29;transform:translateY(-2px)}.project-visual.has-image:hover .project-image-link,.project-visual.has-image:focus-visible .project-image-link{opacity:1;transform:none}@media (hover:none){.project-image-link{opacity:1;transform:none}}@media (max-width:760px){.showcase:has(.project-visual.has-image){grid-template-columns:1fr}.project-visual.has-image{min-height:clamp(260px,75vw,420px)}}.hero-particle-hero{position:relative;isolation:isolate;overflow:clip}.hero-particle-network{position:absolute;z-index:0;top:0;right:0;width:min(58%,720px);height:100%;pointer-events:none;opacity:.86}.hero-particle-hero .hero-copy{position:relative;z-index:1}@media (max-width:760px),(prefers-reduced-motion:reduce){.hero-particle-network{display:none}}
