@import url('/shared/tokens.css');
.stylec-app{max-width:1384px;margin:auto;padding:0 32px 80px}h1,h2,h3,p{margin:0}h1{font-size:2rem;line-height:1.3;letter-spacing:-.035em}h2{font-size:1.4rem}h3{font-size:1rem}a{color:inherit;text-underline-offset:4px}button,.button{font:inherit;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink);min-height:44px;padding:10px 16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{background:var(--surface-hover)}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:var(--brand);border-color:var(--brand);color:var(--on-accent);font-weight:700}.primary:hover{background:var(--brand);filter:brightness(.94)}.wide{width:100%}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:12px;min-height:46px;width:100%;max-width:100%;caret-color:var(--brand)}input::placeholder,textarea::placeholder{color:var(--ink-soft);opacity:1}textarea{resize:vertical}label:not(.check){display:grid;gap:8px}.muted,.action-help{color:var(--ink-soft)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}*{scrollbar-color:var(--ink-muted) var(--bg)}.app-nav{display:flex;gap:14px;align-items:center;min-height:60px;border-bottom:1px solid var(--border);font-size:.9rem}.app-nav>a:first-child{font-weight:700;color:var(--brand)}.source-link{margin-left:auto;color:var(--ink-soft)}.page-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:32px 0 16px}.page-header p{color:var(--ink-soft);margin-top:8px}.source-label{color:var(--ink-soft);font-size:.9rem;white-space:nowrap}.status{font-size:.9rem;color:var(--ink-soft);min-height:28px;margin-bottom:12px}.status[data-error=true]{color:var(--danger)}.status:empty{display:none}.connection{border:1px solid var(--border);border-radius:8px;padding:0 16px;margin-bottom:32px;background:var(--surface-subtle)}summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:600}.connection summary{display:flex;align-items:center;gap:16px;font-size:.9rem}.connection-hint{margin-left:auto;text-decoration:underline;color:var(--ink-soft);white-space:nowrap}.connection-body{padding:8px 0 16px}.connection-body p{color:var(--ink-soft);margin-bottom:12px;overflow-wrap:anywhere}.actions{display:flex;flex-wrap:wrap;gap:8px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.catalog-toolbar>button{font-size:.9rem}.categories{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.categories button{background:none;border-color:transparent;color:var(--ink-soft);padding:8px 14px}.categories button[aria-pressed=true]{background:var(--accent-soft);color:var(--brand);font-weight:700}.categories button:hover{background:var(--surface-hover)}.filter-row{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px}.search-label input{padding-left:16px}.list-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:20px 0 16px;font-size:.85rem;color:var(--ink-soft)}#result-count{font-size:.95rem;color:var(--ink);font-weight:600}.campaign-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}.campaign{min-width:0}.campaign-open{display:block;text-decoration:none;border-radius:8px}.campaign-open:hover h3{text-decoration:underline;text-underline-offset:3px}.photo-frame{position:relative;aspect-ratio:1;background:var(--surface);border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center}.photo-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease-out}.campaign-open:hover .photo-frame img{transform:scale(1.025)}.photo-frame .image-fallback{padding:24px;color:var(--ink-soft);font-size:.85rem;text-align:center}.deadline{position:absolute;bottom:12px;left:12px;background:var(--ink);color:var(--bg);border-radius:4px;padding:4px 9px;font-size:.8rem;font-weight:700}.campaign-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:14px;color:var(--ink-soft);font-size:.8rem}.campaign h3{font-size:1rem;line-height:1.55;margin:7px 0 9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.1em;word-break:keep-all}.campaign-count{font-size:.85rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.applied-label{color:var(--brand);font-weight:700}.more{display:flex;margin:36px auto 0;min-width:240px}.empty{grid-column:1/-1;padding:60px 16px;text-align:center;color:var(--ink-soft)}.skeleton{pointer-events:none}.skeleton .photo-frame,.skeleton-line{background:var(--surface)}.skeleton-line{height:16px;border-radius:4px;margin-top:16px;width:85%}.skeleton-line.short{width:50%;margin-top:10px}.detail-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px}.detail-nav a{font-size:.9rem;color:var(--ink-soft)}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;grid-template-areas:'hero summary' 'content summary';gap:28px 48px;align-items:start}.detail-hero{grid-area:hero;max-width:640px;width:100%;margin:auto}.detail-hero .photo-frame{aspect-ratio:1;max-height:640px}.detail-hero .photo-frame img{object-fit:contain}.detail-hero .photo-frame .deadline{display:none}.detail-summary{grid-area:summary;position:sticky;top:24px;min-width:0}.detail-summary.is-reviewing{position:static}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;color:var(--ink-soft);font-size:.85rem}.badges span{padding:4px 8px;background:var(--surface-subtle);border-radius:4px}.detail-summary h2{font-size:1.6rem;line-height:1.5;letter-spacing:-.025em;margin:0 0 24px}.gift-summary{padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:24px}.gift-summary h3{font-size:.9rem;color:var(--ink-soft);margin-bottom:10px}.gift-summary p{white-space:pre-line;line-height:1.7}.schedule{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;margin:0 0 20px;font-size:.9rem}.schedule dt{color:var(--ink-soft)}.schedule dd{margin:0;overflow-wrap:anywhere}#detail-counts{font-size:.9rem;margin-bottom:20px}.detail-summary>.primary{min-height:50px}.action-help{font-size:.8rem;line-height:1.6;margin-top:10px}.detail-content{grid-area:content;min-width:0}.detail-tabs{display:flex;position:sticky;top:0;z-index:2;background:var(--bg);border-bottom:1px solid var(--border);gap:8px;margin:0 0 28px}.detail-tabs button{flex:1;border:0;border-radius:0;background:none;padding:16px 8px;color:var(--ink-soft);border-bottom:2px solid transparent}.detail-tabs button[aria-selected=true]{border-bottom-color:var(--brand);color:var(--ink);font-weight:700}.detail-content [role=tabpanel]>h3{font-size:1.15rem;margin-bottom:16px}.body-copy{white-space:pre-line;overflow-wrap:anywhere;line-height:1.85;max-width:75ch}.product-images{margin-top:28px}.product-images img{display:block;width:100%;height:auto}.product-images .image-fallback{border:1px solid var(--border);padding:20px;color:var(--ink-soft)}.mission-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin-top:24px}.mission-field{padding:18px 0;border-top:1px solid var(--border)}.mission-field h4{margin:0 0 10px;color:var(--ink-soft);font-size:.9rem}.mission-field p{white-space:pre-line;line-height:1.8;overflow-wrap:anywhere}.mission-field.long{grid-column:1/-1}.keyword-fields{margin:20px 0}.detail-content details{margin-top:24px;border-top:1px solid var(--border)}.detail-content details p{margin-top:12px}.records{border-top:1px solid var(--border);margin-top:48px;padding-top:12px}.records>p{font-size:.9rem;margin:8px 0 20px}.records article{padding:20px 0;border-bottom:1px solid var(--border)}.records article h3{margin-bottom:8px}.records article p{font-size:.9rem;margin:4px 0}.records article button{margin-top:12px}#application{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}#application>h3{font-size:1.15rem;margin-bottom:12px}#application>p{font-size:.85rem;overflow-wrap:anywhere}#application>label:not(.check){margin:20px 0;font-size:.9rem}.check{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:.85rem;line-height:1.7}.check input{width:20px;min-height:20px;height:20px;margin:3px 0 0;flex:none;accent-color:var(--brand)}.terms-details{margin:20px 0;font-size:.85rem}.terms-details summary{font-size:.85rem}#policies,#terms{white-space:pre-line;overflow-wrap:anywhere;max-height:320px;overflow:auto}#cloud{padding:32px;border:1px solid var(--border);border-radius:8px;margin-top:24px}#cloud p{margin:14px 0 24px;max-width:65ch}
@media(min-width:1600px){.stylec-app{max-width:1480px}}@media(max-width:1120px){.campaign-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-layout{grid-template-columns:minmax(0,1fr) 340px;gap:24px}.detail-summary h2{font-size:1.4rem}}@media(max-width:900px){.detail-layout{grid-template-columns:1fr;grid-template-areas:'hero' 'summary' 'content';gap:28px}.detail-hero{max-width:520px}.detail-summary{position:static}.detail-summary h2{font-size:1.5rem}.mission-fields{grid-template-columns:1fr}.mission-field.long{grid-column:auto}.source-label{display:none}}@media(max-width:650px){.stylec-app{padding:0 18px 48px}.app-nav{min-height:52px;font-size:.8rem;gap:10px}.page-header{padding-top:24px}h1{font-size:1.65rem}.page-header p{font-size:.9rem}.connection{margin-bottom:24px;padding:0 12px}.connection summary{font-size:.8rem;gap:10px}.connection-body .actions>*{flex:1 1 140px}.catalog-toolbar{margin-bottom:12px}.catalog-toolbar h2{font-size:1.15rem}.catalog-toolbar>button{font-size:.8rem;padding:8px 12px}.categories{flex-wrap:nowrap;overflow:auto;gap:4px;margin:0 -18px 16px;padding:0 18px}.categories button{white-space:nowrap;font-size:.85rem;padding:8px 12px}.filter-row{grid-template-columns:minmax(0,1fr) 138px;gap:8px}input,select,textarea{font-size:16px}.sort-label select{padding:12px 6px;font-size:.85rem}.list-meta{align-items:flex-start;flex-direction:column;gap:4px;margin:16px 0}.list-meta #list-status{font-size:.75rem}.campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.campaign h3{font-size:.9rem;-webkit-line-clamp:3;min-height:4.65em}.campaign-meta,.campaign-count{font-size:.75rem}.deadline{left:8px;bottom:8px;padding:3px 6px;font-size:.7rem}.detail-nav{gap:12px}.detail-nav button,.detail-nav a{font-size:.85rem}.detail-nav button{padding:10px}.detail-tabs{gap:0}.detail-tabs button{font-size:.9rem}.detail-summary h2{font-size:1.4rem}.more{width:100%}#cloud{padding:24px 18px}.status{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.profile-toolbar{display:flex;align-items:center;gap:24px;margin:4px 0 16px}.profile-toolbar>label{grid-template-columns:auto 220px;align-items:center;gap:12px;font-weight:700;white-space:nowrap}.profile-toolbar p{font-size:.85rem;line-height:1.7}.hide-applied{display:flex!important;align-items:center;gap:9px;margin-top:16px;min-height:44px;font-size:.9rem}.hide-applied input{width:19px;min-height:19px;height:19px;flex:none;accent-color:var(--brand)}.account-states{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.account-state{border:1px solid var(--border);border-radius:4px;padding:4px 7px;font-size:.85rem;line-height:1.5;color:var(--ink-soft);background:var(--surface-subtle)}.account-state[data-state=applied]{color:var(--brand);font-weight:700}.account-state[data-state=unverified],.account-state[data-state=unknown]{color:var(--warning)}.detail-account{font-weight:700;margin-bottom:10px}#detail-account-states{margin-bottom:20px}@media(max-width:650px){.profile-toolbar{display:block}.profile-toolbar>label{grid-template-columns:auto minmax(0,1fr)}.profile-toolbar p{margin-top:10px;font-size:.8rem}.account-states{gap:4px}.account-state{font-size:.8rem;padding:4px 5px}}
