:root{--cream:#fbf8f2;--ink:#2f2622;--ink-soft:#6d625b;--line:#d9d2c8;--orange:#f08c5f;--mint:#b4ddd8;--pink:#e36a86;--olive:#8b9b52;--yellow:#e7d56a;--tan:#dcb492;--sans:"Space Grotesk", system-ui, sans-serif;--mono:"Courier Prime", ui-monospace, monospace;font:16px/1.45 var(--sans);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{background:var(--cream);margin:0}h1,h2,h3,p{margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.pill{border:1.5px solid var(--ink);background:var(--cream);border-radius:999px;padding:8px 20px;font-size:16px;font-weight:600;transition:background .15s,transform .15s}.pill:hover{transform:translateY(-1px)}.pill-sm{padding:6px 16px;font-size:15px}.pill-active{background:var(--ink);color:var(--cream)}.btn-dark{background:var(--ink);color:var(--cream);border:0;border-radius:999px;padding:12px 26px;font-weight:600}.btn-dark:disabled,.cta:disabled{opacity:.6;transform:none}.link{background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.mono-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:clamp(13px,1vw,16px)}.status{color:var(--ink-soft);padding:24px 0;font-size:18px}.status-error{color:#a3283f}.sample-banner{background:var(--yellow);text-align:center;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;padding:6px;font-size:13px}.shell{min-height:100svh}.nav{justify-content:space-between;align-items:center;gap:16px;max-width:1280px;margin:0 auto;padding:20px clamp(16px,4vw,48px);display:flex}.nav nav{flex-wrap:wrap;gap:10px;display:flex}.nav-brand{letter-spacing:-.03em;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:26px;font-weight:700;display:flex}.page{max-width:1280px;margin:0 auto;padding:clamp(16px,3vw,40px) clamp(16px,4vw,48px) 80px;position:relative}.page-title{letter-spacing:-.04em;font-size:clamp(48px,7vw,112px);font-weight:700;line-height:.95}.page-sub{color:var(--ink-soft);max-width:40ch;margin-top:12px;font-size:clamp(18px,1.6vw,24px)}.page-sub strong{color:var(--ink)}.page-stick{height:clamp(80px,8vw,130px);position:absolute;top:clamp(16px,3vw,40px);right:clamp(16px,4vw,48px)}.discover-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:clamp(32px,4vw,56px);display:flex}.discover-head .mono-label{margin-top:10px}.filters{flex-wrap:wrap;gap:10px;display:flex}.card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(28px,3vw,44px);padding:10px;display:grid}.card-wrap{transition:rotate .2s,translate .2s;position:relative;rotate:-2deg}.card-wrap:nth-child(3n+2){rotate:2deg}.card-wrap:nth-child(3n){rotate:-1deg}.card-wrap:hover,.card-wrap:focus-within{translate:0 -4px;rotate:0deg}.card-back{border-radius:6px;position:absolute;inset:0;transform:translate(-10px,-10px)rotate(-3deg)}.card{min-height:280px;color:var(--ink);border-radius:6px;flex-direction:column;gap:20px;padding:clamp(22px,2vw,30px);display:flex;position:relative}.card-pink{background:var(--pink)}.card-mint{background:var(--mint)}.card-orange{background:var(--orange)}.card-title{letter-spacing:-.01em;font-size:clamp(24px,2vw,32px);font-weight:600;line-height:1.1}.card-num{font-family:var(--mono);margin-bottom:8px;font-size:15px;font-weight:400;display:block}.card-meta{font-family:var(--mono);text-transform:uppercase;font-size:15px;line-height:1.5}.card-error{background:#ffffffb3;border-radius:6px;padding:4px 8px;font-size:14px}.card-join{background:var(--cream);border:1.5px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:999px;align-self:flex-end;margin-top:auto;padding:8px 22px;font-size:16px;font-weight:600;transition:transform .15s,box-shadow .15s}.card-join:hover:not(:disabled){box-shadow:0 6px 0 var(--ink);transform:translateY(-2px)}.card-join:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.card-join:disabled{background:var(--ink);color:var(--cream);box-shadow:none;transform:translateY(4px)}.empty{color:var(--ink-soft);align-items:center;gap:20px;padding:32px 0;font-size:20px;display:flex}.empty .stickman{height:100px;position:static}.profile-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;gap:clamp(28px,4vw,56px);margin-top:clamp(28px,3vw,44px);display:grid}.profile-note{position:relative;rotate:-2deg}.profile-note .card{background:var(--tan);min-height:0}.profile-note .card-back{background:var(--pink)}.profile-name{letter-spacing:-.03em;font-size:clamp(32px,3vw,48px);font-weight:700;line-height:1}.tag-list{flex-wrap:wrap;gap:8px;display:flex}.tag{border-radius:999px;padding:4px 14px;font-size:15px;font-weight:600}.tag:nth-child(3n+1){background:var(--orange)}.tag:nth-child(3n+2){background:var(--pink)}.tag:nth-child(3n){background:var(--olive);color:var(--cream)}.panel{border:1.5px solid var(--ink);background:#fff;border-radius:20px;padding:clamp(24px,3vw,40px)}.form{gap:18px;display:grid}.form label{gap:6px;font-size:16px;font-weight:600;display:grid}.form input:not([type=checkbox]),.form select{border:1.5px solid var(--line);background:var(--cream);border-radius:12px;padding:12px 14px;font-size:17px}.form input:not([type=checkbox]):focus,.form select:focus{border-color:var(--ink);outline:none}.form fieldset{border:0;margin:0;padding:0}.form legend{margin-bottom:8px;font-size:16px;font-weight:600}.choices{flex-wrap:wrap;gap:10px;display:flex}.form .choice{border:1.5px solid var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 16px;font-weight:500;display:flex}.form .choice:has(input:checked){background:var(--ink);color:var(--cream)}.form .choice input{accent-color:var(--orange)}.form .cta{justify-self:start;margin-top:6px}.coming{color:var(--ink-soft);align-items:center;gap:24px;margin-top:40px;font-size:20px;display:flex}.coming .stickman{height:120px;position:static}@media (width<=760px){.nav{flex-direction:column;align-items:flex-start;gap:12px}.nav .pill{padding:6px 14px;font-size:14px}.page-stick{display:none}.profile-layout{grid-template-columns:1fr}.card{min-height:220px}}.form textarea{border:1.5px solid var(--line);font:inherit;background:var(--cream);resize:vertical;border-radius:12px;padding:12px 14px;font-size:17px}.form textarea:focus{border-color:var(--ink);outline:none}.form input[aria-invalid=true]{border-color:#a3283f}.form-row{grid-template-columns:1.4fr 1fr 1fr;gap:12px;display:grid}.optional{font-family:var(--mono);color:var(--ink-soft);text-transform:uppercase;font-size:13px;font-weight:400}.field-help,.field-error{margin-top:-8px;font-size:15px}.field-help{color:var(--ink-soft)}.field-error{color:#a3283f;font-weight:500}.form .choice:has(input[type=radio]) input{opacity:0;pointer-events:none;position:absolute}.form .choice:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:2px}.form .choice-pink:has(input:checked){background:var(--pink);color:var(--ink)}.form .choice-orange:has(input:checked){background:var(--orange);color:var(--ink)}.form .choice-mint:has(input:checked){background:var(--mint);color:var(--ink)}.form .choice-yellow:has(input:checked){background:var(--yellow);color:var(--ink)}.form .choice-olive:has(input:checked){background:var(--olive);color:var(--cream)}.marker{background:linear-gradient(transparent 58%, var(--yellow) 58%, var(--yellow) 92%, transparent 92%);padding:0 4px}.auth{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100svh;display:grid}.auth-art{background:var(--tan);flex-direction:column;padding:clamp(28px,4vw,56px);display:flex;position:relative;overflow:hidden}.auth-brand{align-self:flex-start}.auth-heading{letter-spacing:-.04em;max-width:11ch;margin-top:clamp(40px,8vh,96px);font-size:clamp(44px,5.4vw,92px);font-weight:700;line-height:.98}.auth-blurb{max-width:28ch;margin-top:18px;font-size:clamp(18px,1.5vw,24px)}.auth-notes{flex:1;min-height:260px;margin-top:32px;position:relative}.auth-note-1{bottom:18%;left:0;rotate:-6deg}.auth-note-2{z-index:1;bottom:6%;left:42%;rotate:5deg}.auth .auth-stick{height:clamp(90px,9vw,140px);top:0;left:30%}.auth-panel{flex-direction:column;justify-content:center;padding:clamp(28px,4vw,56px);display:flex}.auth-back{align-self:flex-start;margin-bottom:24px;font-size:16px}.auth-card{width:100%;max-width:480px}.auth-title{letter-spacing:-.04em;margin:6px 0 24px;font-size:clamp(40px,4vw,64px);font-weight:700;line-height:1}.auth-switch{margin-top:24px;font-size:17px}.school-picker{gap:10px;display:grid}.school-option{border:1.5px solid var(--ink);cursor:pointer;border-radius:14px;grid-template-columns:none;align-items:baseline;padding:14px 18px;transition:translate .15s,box-shadow .15s;position:relative;gap:12px!important;display:flex!important}.school-option input{opacity:0;pointer-events:none;position:absolute}.school-option:has(input:checked){box-shadow:0 5px 0 var(--ink);translate:0 -3px}.school-option:has(input:checked):after{content:"✓";margin-left:auto;font-weight:700}.school-option:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}.school-short{font-size:22px;font-weight:700}.school-name{font-size:15px;font-weight:500}.create-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:clamp(28px,4vw,56px);margin-top:clamp(28px,3vw,44px);display:grid}.preview-panel{background:var(--ink);border-radius:24px;padding:clamp(24px,3vw,40px) clamp(24px,3vw,40px) 120px;position:sticky;top:24px}.preview-label{color:var(--cream);opacity:.7;margin-bottom:24px}.preview-card .card{min-height:260px}.preview-card .card-join{cursor:default}.preview-desc{font-size:16px}.preview-panel .preview-stick{color:var(--cream);height:90px;bottom:16px;right:28px}.created{flex-direction:column;align-items:flex-start;gap:8px;padding-top:24px;display:flex}.created .stickman{height:120px;margin-bottom:16px;position:static}.created-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:28px;display:flex}@media (width<=860px){.auth{grid-template-columns:1fr}.auth-art{padding-bottom:0}.auth-heading{margin-top:28px}.auth-notes{min-height:200px}.auth .note-wrap{width:190px;height:120px}.create-layout{grid-template-columns:1fr}.preview-panel{position:static}.form-row{grid-template-columns:1fr 1fr}.form-row label:first-child{grid-column:1/-1}}.section-title{letter-spacing:-.02em;margin:clamp(32px,4vw,48px) 0 16px;font-size:clamp(26px,2.4vw,36px);font-weight:700}.mine-list{gap:16px;display:grid}.mine-item{gap:14px;display:grid}.mine-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.mine-title{margin-bottom:4px;font-size:clamp(20px,1.8vw,26px);font-weight:600}.mine-empty{color:var(--ink-soft)}.mine-error{margin-top:16px}.request-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.request-row{background:var(--cream);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.request-who{font-weight:600}.request-actions{flex-wrap:wrap;gap:8px;display:flex}.tag-count,.status-pill{white-space:nowrap;border-radius:999px;padding:4px 14px;font-size:14px;font-weight:600}.tag-count{background:var(--mint)}.status-pending{background:var(--yellow)}.status-accepted{background:var(--olive);color:var(--cream)}.status-rejected{background:var(--line)}.verify-actions{margin-top:24px}.nav-logout{margin-left:6px;font-size:15px}.check-email{max-width:34ch;font-size:19px}.welcome{isolation:isolate;place-items:center;min-height:100svh;padding:32px 16px;display:grid;position:relative;overflow:hidden}.hero{z-index:2;text-align:center;background:radial-gradient(closest-side, var(--cream) 70%, transparent);border-radius:28px;flex-direction:column;align-items:center;padding:clamp(28px,4vw,48px) clamp(24px,5vw,64px);display:flex;position:relative}.hero-logo{color:var(--ink);animation:.9s cubic-bezier(.2,.8,.2,1) both spin-in}.welcome-brand{letter-spacing:-.04em;margin-top:12px;font-size:clamp(64px,9vw,170px);font-weight:700;line-height:.95}.welcome-tagline{color:var(--ink-soft);text-wrap:balance;max-width:30ch;margin:20px 0 36px;font-size:clamp(19px,1.8vw,32px)}.welcome-tagline strong{color:var(--ink);font-weight:600}.cta{background:var(--ink);color:var(--cream);box-shadow:0 6px 0 var(--orange);border:0;border-radius:999px;align-items:center;gap:12px;padding:20px 40px;font-size:clamp(18px,1.5vw,26px);font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-flex}.cta:hover{box-shadow:0 8px 0 var(--orange);transform:translateY(-2px)}.cta:active{box-shadow:0 2px 0 var(--orange);transform:translateY(4px)}.cta-arrow{transition:transform .15s}.cta:hover .cta-arrow{transform:translate(4px)}.cta-hint{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin-top:16px;font-size:clamp(13px,1vw,17px)}.welcome-login{margin-top:20px;font-size:clamp(16px,1.2vw,21px)}.notes{z-index:1;pointer-events:none;position:absolute;inset:0}.note-wrap{width:clamp(200px,19vw,340px);height:clamp(130px,12vw,210px);animation:7s ease-in-out infinite alternate drift;position:absolute}.note{text-align:left;border-radius:6px;flex-direction:column;justify-content:space-between;padding:clamp(16px,1.8vw,24px);display:flex;position:absolute;inset:0}.note-back{transform:translate(-10px,-10px)rotate(-3deg)}.note-title{font-size:clamp(20px,1.9vw,34px);font-weight:600;line-height:1.1}.note-when{font-family:var(--mono);text-transform:uppercase;font-size:clamp(12px,1vw,16px)}.note-1{top:9%;left:max(3%,50% - 680px);rotate:-7deg}.note-2{animation-delay:-2s;top:7%;right:max(3%,50% - 680px);rotate:6deg}.note-3{animation-delay:-4s;bottom:8%;right:max(3%,50% - 640px);rotate:-5deg}.note-4{animation-delay:-1s;bottom:7%;left:max(3%,50% - 640px);rotate:5deg}.note-5{animation-delay:-3s;top:40%;left:max(1%,50% - 820px);rotate:4deg}.note-6{animation-delay:-5s;top:42%;right:max(1%,50% - 820px);rotate:-6deg}@media (width<=1280px){.note-5,.note-6{display:none}}.stickman{color:var(--ink);flex-shrink:0;width:auto;height:clamp(70px,8vw,130px);position:absolute;overflow:visible}.stick-1{top:14%;left:calc(max(3%,50% - 680px) + clamp(210px,20vw,360px))}.stick-2{bottom:9%;right:calc(max(3%,50% - 640px) + clamp(210px,20vw,360px))}.stick-3{bottom:8%;left:calc(max(3%,50% - 640px) + clamp(220px,21vw,370px));transform:scaleX(-1)}.stick-4{height:clamp(70px,7vw,120px);top:8%;right:calc(max(3%,50% - 680px) + clamp(220px,21vw,380px))}.limb-wave{transform-origin:30px 34px;animation:1.2s ease-in-out infinite alternate wave}.limb-swing{transform-origin:30px 34px;animation:.9s ease-in-out infinite alternate swing}.burst{animation:1.6s ease-in-out infinite pop}@keyframes wave{0%{transform:rotate(-12deg)}to{transform:rotate(14deg)}}@keyframes swing{0%{transform:rotate(-20deg)}to{transform:rotate(20deg)}}@keyframes pop{0%,60%,to{opacity:0}70%,90%{opacity:1}}@media (prefers-reduced-motion:reduce){.limb-wave,.limb-swing,.burst{animation:none}}@media (width<=1000px),(height<=620px){.welcome .stickman{display:none}}@keyframes drift{0%{translate:0}to{translate:0 -10px}}@keyframes spin-in{0%{opacity:0;transform:rotate(-180deg)scale(.6)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.note-wrap,.hero-logo{animation:none}.cta,.cta-arrow{transition:none}}.bg-pink{background:var(--pink)}.bg-mint{background:var(--mint)}.bg-yellow{background:var(--yellow)}.bg-olive{background:var(--olive)}.bg-orange{background:var(--orange)}.bg-cream{background:#ece6d8}@media (width<=760px),(height<=620px){.note-wrap{width:190px;height:120px}.note-1{top:-30px;left:-40px}.note-2{top:-20px;right:-50px}.note-3{bottom:-30px;right:-40px}.note-4{bottom:-20px;left:-50px}.note-title{font-size:18px}}.cta{white-space:nowrap}@media (width<=420px){.cta{padding:16px 24px;font-size:16px}}
