.user-name-button{align-items:center;gap:var(--space-2);font:inherit;min-height:var(--control-height);text-align:left;border-radius:var(--radius-sm);padding:var(--space-2);background:0 0;border:0;display:inline-flex}.user-name-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.user-name-pencil{flex-shrink:0}.user-name-button:hover{color:var(--color-primary)}.nickname-editor{width:min(100%,440px);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);margin-left:auto}.nickname-editor h2{font-size:1.1rem}.nickname-editor form{gap:var(--space-2);margin-top:var(--space-3);display:grid}.nickname-editor label{font-size:.9rem;font-weight:600}.nickname-editor .search-input{padding:var(--space-3)}.nickname-error{color:var(--color-error);font-size:.85rem}.nickname-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=680px){.nickname-editor{margin-left:0}}.user-name-button:hover:enabled{background:var(--color-primary-soft)}.search-row{align-items:stretch;gap:var(--space-3);display:flex}.search-field{flex:1;min-width:0;position:relative}.search-row>.button{padding:var(--space-3) var(--space-5);flex-shrink:0}.search-input{min-width:0;font-size:1rem}.autocomplete-panel{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-popover);position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden}.autocomplete-panel ul{padding:var(--space-2);max-height:320px;margin:0;list-style:none;overflow-y:auto}.autocomplete-panel li{padding:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;overflow-wrap:anywhere;font-size:.9rem}.autocomplete-panel li[aria-selected=true],.autocomplete-panel li:hover{background:var(--color-primary-soft);color:var(--color-primary)}.autocomplete-panel>p{padding:var(--space-3)}.filter-block{margin-top:var(--space-5);min-width:0}.category-options{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.filter-chip{border:1px solid var(--color-border);min-height:var(--control-height);background:var(--color-surface);color:var(--color-muted);border-radius:99px;max-width:100%;padding:8px 15px;font-size:.85rem}.filter-chip[aria-pressed=true]{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft);font-weight:700}.filter-chip[aria-pressed=true]:before{content:"✓ "}.filter-chip:hover{border-color:var(--color-primary)}.category-loading{gap:var(--space-2);display:flex}.category-loading>span{border-radius:99px;width:65px;height:34px}.filter-block .state{padding:var(--space-4);text-align:left;align-items:flex-start}.hashtag-form{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.hashtag-form input{width:200px;min-width:0;max-width:100%;padding:8px 12px;font-size:.9rem}.selected-tags{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.tag-remove{gap:var(--space-2);border:1px solid var(--color-border);background:var(--color-primary-soft);color:var(--color-primary);border-radius:var(--radius-sm);min-height:var(--control-height);overflow-wrap:anywhere;align-items:center;max-width:100%;padding:8px 12px;display:inline-flex}.tag-remove span{flex-shrink:0;font-size:1.1rem}.challenge-grid{gap:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.challenge-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-card);transition:border-color .15s;display:block;overflow:hidden}a.challenge-card:hover{border-color:var(--color-primary)}.challenge-image{aspect-ratio:16/10;background:var(--color-primary-soft);width:100%;overflow:hidden}.challenge-image img{width:100%;height:100%;display:block}.challenge-image--cover img{object-fit:cover}.challenge-image--contain img{object-fit:contain}.image-fallback{justify-content:center;align-items:center;gap:var(--space-2);height:100%;color:var(--color-muted);flex-direction:column;font-size:.7rem;display:flex}.image-fallback>span:first-child{color:var(--color-primary);opacity:.5;font-size:2rem;font-weight:750}.challenge-card-body{padding:var(--space-4)}.challenge-card h3{margin:0 0 var(--space-3);letter-spacing:-.025em;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-height:3em;font-size:1rem;line-height:1.5;display:-webkit-box;overflow:hidden}.challenge-meta{color:var(--color-muted);flex-wrap:wrap;gap:4px 7px;min-height:1.6em;max-height:3.2em;font-size:.7rem;display:flex;overflow:hidden}.card-category{color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.card-tag{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.participation-metric{margin-top:var(--space-4);color:var(--color-muted);align-items:center;gap:5px;font-size:.75rem;display:flex}.participation-metric strong{color:var(--color-text);font-weight:650}.card-arrow{color:var(--color-primary);margin-left:auto;font-size:1rem}.skeleton{background:linear-gradient(100deg, var(--color-skeleton) 20%, var(--color-background) 40%, var(--color-skeleton) 60%);background-size:200% 100%;animation:1.8s linear infinite skeleton-pulse}.skeleton-card{pointer-events:none}.skeleton-title{height:42px;margin-bottom:var(--space-3);border-radius:4px}.skeleton-line{height:12px;margin-top:var(--space-3);border-radius:4px}.skeleton-short{width:65%}.empty-action{text-align:center;padding:0 var(--space-5) var(--space-5)}.results-section{scroll-margin-top:var(--space-5)}.result-controls{justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.pagination{justify-content:center;align-items:center;gap:var(--space-5);margin-top:var(--space-6);font-size:.85rem;display:flex}.list-update{color:var(--color-muted);margin-bottom:var(--space-3);font-size:.8rem}@keyframes skeleton-pulse{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}.challenge-card{transition:none}}@media (width<=1000px){.challenge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.challenge-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.challenge-grid{grid-template-columns:minmax(0,1fr)}.challenge-card h3{min-height:auto}.challenge-card-body{padding:var(--space-4) var(--space-5)}.search-row{gap:var(--space-2)}.search-row>.button{padding-left:var(--space-4);padding-right:var(--space-4)}.search-input{padding:var(--space-4);font-size:.9rem}.hashtag-form{gap:var(--space-2)}.hashtag-form label{width:100%}.hashtag-form input{flex:1;width:auto}.pagination{gap:var(--space-4)}}.filter-chip:active:enabled,.period-switch button:active:enabled{background:var(--color-primary-soft)}.filter-chip:disabled{cursor:not-allowed}.period-switch button:hover:enabled{color:var(--color-primary);background:var(--color-surface)}@media (width<=380px){.search-row{flex-wrap:wrap}.search-field{flex-basis:100%}.search-row>.button{width:100%}}.selection-matrix-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;min-width:0;padding:var(--space-1) var(--space-1) var(--space-4);scrollbar-color:var(--color-border) var(--color-background);scrollbar-width:thin;overflow-x:auto}.selection-matrix{gap:var(--space-4);width:max-content;min-width:100%;display:grid}.selection-matrix-row{grid-template-columns:52px repeat(var(--selection-group-count), 180px);gap:var(--space-3);align-items:start;display:grid}.selection-matrix-header{color:var(--color-primary);font-weight:650}.selection-matrix-header>div{overflow-wrap:anywhere;border-bottom:1px solid var(--color-border);padding:8px 0}.selection-matrix-price{padding-top:8px;font-size:1.2rem;font-weight:700}.selection-matrix-cell{gap:var(--space-3);min-width:0;min-height:32px;display:grid}.selection-matrix-cell .candidate-card{width:100%}.share-export-target .selection-matrix-scroll{overflow:visible}.selection-matrix-row:not(.selection-matrix-header){padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.selection-matrix-scroll:focus-visible{outline-offset:2px}.challenge-detail{letter-spacing:0;padding-bottom:170px}.challenge-detail h1{letter-spacing:0;overflow-wrap:anywhere;font-size:2rem}.challenge-detail h2,.challenge-detail h3{letter-spacing:0}.challenge-detail-heading{gap:var(--space-3);margin-bottom:var(--space-6);display:grid}.challenge-detail-heading>p{color:var(--color-muted);white-space:pre-wrap}.detail-metadata{align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:.85rem;display:flex}.detail-category{color:var(--color-primary);font-weight:650}.detail-tag{color:var(--color-muted)}.detail-pricing{color:var(--color-primary);font-size:.75rem}.detail-view-count{color:var(--color-muted);font-size:.75rem}.detail-statistics-link{color:var(--color-primary);text-underline-offset:4px;justify-self:start;font-size:.85rem;text-decoration:underline}.challenge-rules{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-4);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.challenge-rules h2{flex:1;min-width:220px;font-size:1.1rem}.version-label{color:var(--color-muted);white-space:nowrap;font-size:.75rem}.selection-feedback{min-height:30px;padding-top:var(--space-1);color:var(--color-error);font-size:.85rem}.price-board{gap:var(--space-5);display:grid}.price-tier{gap:var(--space-4);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border);grid-template-columns:64px minmax(0,1fr);display:grid}.tier-price{padding-top:var(--space-3);margin:0;font-size:1.4rem;line-height:1.4}.tier-price span{color:var(--color-muted);margin-top:var(--space-1);font-size:.75rem;font-weight:400;display:block}.candidate-grid{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;display:grid}.candidate-card{border:2px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;color:var(--color-text);border-radius:var(--radius-md);text-align:left;flex-direction:column;padding:0;transition:transform .15s,border-color .12s;display:flex;position:relative;overflow:hidden}.candidate-card:hover:enabled{border-color:var(--color-muted)}.candidate-card[aria-pressed=true]{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary);transform:scale(.96)}.candidate-card[aria-pressed=true]:after{content:"";z-index:1;background:var(--color-text);opacity:.12;pointer-events:none;position:absolute;inset:0}.candidate-card[aria-pressed=true] .candidate-image{filter:grayscale(.6)}.candidate-card[aria-pressed=true] .candidate-selection-label{color:var(--color-primary);font-weight:650}.candidate-image{aspect-ratio:4/3;background:var(--color-surface-muted);width:100%;overflow:hidden}.candidate-image img{object-fit:cover;width:100%;height:100%;display:block}.candidate-fallback{justify-content:center;align-items:center;gap:var(--space-1);width:100%;height:100%;color:var(--color-muted);flex-direction:column;display:flex}.candidate-fallback>span{font-size:2rem;font-weight:600}.candidate-fallback small{font-size:.7rem}.candidate-check{top:var(--space-2);right:var(--space-2);z-index:2;background:var(--color-primary);color:#fff;border:2px solid var(--color-surface);border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute}.candidate-check svg{width:24px;height:24px}.candidate-name{-webkit-line-clamp:2;min-height:2.8em;margin:var(--space-3) var(--space-3) var(--space-1);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.9rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.candidate-selection-label{padding:0 var(--space-3) var(--space-3);color:var(--color-muted);font-size:.75rem}.team-bar{z-index:20;background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-4) var(--page-gutter) calc(var(--space-4) + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #1f1c160a}.team-bar-inner{max-width:calc(var(--content-width) - 2 * var(--page-gutter));gap:var(--space-5);grid-template-columns:minmax(0,1fr) auto;align-items:center;margin:0 auto;display:grid}.team-bar-counts{gap:var(--space-6);display:flex}.team-bar-counts p{gap:var(--space-1);display:grid}.team-bar-counts span{color:var(--color-muted);font-size:.75rem}.team-bar-counts strong{font-variant-numeric:tabular-nums;font-size:1.4rem;line-height:1.25}.team-bar-reason{color:var(--color-muted);margin-top:var(--space-1);font-size:.8rem}.budget-exceeded{color:var(--color-error)}.team-confirm{min-width:110px}.participation-error{padding:var(--space-4) 0;color:var(--color-error);gap:var(--space-3);justify-items:start;font-size:.9rem;display:grid}.confirmation-team{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.confirmation-team li{align-items:start;gap:var(--space-4);justify-content:space-between;font-size:.9rem;display:flex}.confirmation-team li>span{overflow-wrap:anywhere;min-width:0}.confirmation-team li>strong{white-space:nowrap}.participation-success{gap:var(--space-4);padding:var(--space-5) 0;border-top:1px solid var(--color-border);display:grid}.success-label{color:var(--color-primary);font-size:.85rem;font-weight:650}.participation-success h2{font-size:1.5rem}.receipt-total{color:var(--color-muted)}.receipt-total strong{color:var(--color-text)}.receipt-grid{gap:var(--space-3);margin:var(--space-3) 0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.receipt-candidate{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);min-width:0;overflow:hidden}.receipt-candidate>div:last-child{gap:var(--space-2);padding:var(--space-3);font-size:.9rem;display:grid}.receipt-candidate strong{overflow-wrap:anywhere}.receipt-candidate span{color:var(--color-muted)}.receipt-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.detail-skeleton{gap:var(--space-5);display:grid}.detail-skeleton-title,.detail-skeleton-copy,.detail-skeleton-price,.candidate-skeleton{background:var(--color-skeleton);border-radius:var(--radius-sm)}.detail-skeleton-title{width:min(100%,380px);height:38px}.detail-skeleton-copy{width:min(100%,520px);height:24px;margin-bottom:var(--space-5)}.detail-skeleton-price{height:48px}.candidate-skeleton>div{aspect-ratio:4/3}.candidate-skeleton>span{border-top:4px solid var(--color-background);height:74px;display:block}@media (width<=1000px){.candidate-grid,.receipt-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=680px){.challenge-detail{padding-bottom:180px}.challenge-detail h1{font-size:1.65rem}.challenge-detail-heading{margin-bottom:var(--space-5)}.challenge-rules h2{font-size:1rem}.price-tier{gap:var(--space-3);grid-template-columns:minmax(0,1fr)}.tier-price{align-items:baseline;gap:var(--space-2);padding-top:0;font-size:1.2rem;display:flex}.candidate-grid,.receipt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-bar{padding-left:var(--space-4);padding-right:var(--space-4)}.team-bar-inner{gap:var(--space-3)}.team-bar-counts{gap:var(--space-4)}.team-bar-counts strong{font-size:1.15rem}.team-confirm{min-width:88px}.detail-skeleton-price{width:64px;height:28px}}@media (prefers-reduced-motion:reduce){.candidate-card{transition:none}}.tier-price,.selection-matrix-price{font-variant-numeric:tabular-nums}.candidate-card:disabled{opacity:.65;border-style:dashed}.candidate-card[aria-pressed=true]:disabled{opacity:1;border-style:solid}@media (width<=380px){.team-bar-inner{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.team-bar-counts{justify-content:space-between}.team-confirm{width:100%}.challenge-detail{padding-bottom:220px}}.statistics-page{gap:var(--section-gap);letter-spacing:0;display:grid}.statistics-page h1{letter-spacing:0;font-size:2rem}.statistics-page h2,.statistics-page h3{letter-spacing:0}.statistics-page-heading{gap:var(--space-4);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.statistics-page-heading a{color:var(--color-primary);text-underline-offset:4px;font-size:.85rem;text-decoration:underline}.statistics-summary{gap:var(--space-6);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:end;display:flex}.statistics-summary>div{gap:var(--space-1);min-width:130px;display:grid}.statistics-summary span{color:var(--color-muted);font-size:.85rem}.statistics-summary strong{font-size:2rem;font-weight:750;line-height:1.3}.statistics-summary small{margin-left:var(--space-2);font-size:.9rem;font-weight:500}.statistics-summary>p{color:var(--color-muted);margin-left:auto;font-size:.85rem}.statistics-zero{color:var(--color-muted)}.statistics-section{gap:var(--space-5);display:grid}.statistics-section>h2,.comments-section>h2{font-size:1.4rem}.statistics-candidate-tiers{gap:var(--space-6);display:grid}.statistics-candidate-tier{gap:var(--space-4);display:grid}.statistics-candidate-tier>h3{padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);color:var(--color-primary);margin:0;font-size:1.2rem}.statistics-candidates{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.statistics-candidate-tier>.statistics-candidates{grid-template-columns:repeat(5,minmax(0,1fr))}.statistics-candidate{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-card);overflow:hidden}.statistics-candidate-body{padding:var(--space-4);gap:var(--space-3);display:grid}.statistics-candidate-title{gap:var(--space-2);justify-content:space-between;align-items:start;display:flex}.statistics-candidate-title h4{letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:.95rem}.statistics-candidate-title>strong{white-space:nowrap;color:var(--color-muted);font-size:.85rem}.statistics-rate{color:var(--color-primary);font-size:1.65rem;font-weight:700}.statistics-rate span{margin-left:var(--space-1);color:var(--color-muted);font-size:.75rem;font-weight:400}.statistics-candidate-meta{justify-content:space-between;gap:var(--space-2);color:var(--color-muted);flex-wrap:wrap;font-size:.75rem;display:flex}.statistics-combinations{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.combination-section{min-width:0}.combination-section>h3{margin:0 0 var(--space-4);font-size:1rem}.combination-list,.combination-members{margin:0;padding:0;list-style:none}.combination-list{gap:var(--space-3);display:grid}.combination-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3);background:var(--color-surface)}.combination-count{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;font-size:.8rem;display:flex}.combination-count strong{color:var(--color-primary)}.combination-count span{color:var(--color-muted)}.combination-members{gap:var(--space-2);display:grid}.combination-members>li{align-items:center;gap:var(--space-2);grid-template-columns:36px minmax(0,1fr) auto;font-size:.85rem;display:grid}.combination-members .candidate-image{aspect-ratio:1;border-radius:4px}.combination-members .candidate-fallback>span{font-size:1rem}.combination-members .candidate-fallback small{display:none}.combination-members small{color:var(--color-muted);white-space:nowrap}.statistics-empty{padding:var(--space-4) 0;color:var(--color-muted);font-size:.85rem}.statistics-tiers{border-top:1px solid var(--color-border)}.statistics-tier{gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);grid-template-columns:160px minmax(0,1fr);display:grid}.statistics-tier h3{margin:0;font-size:1.15rem}.statistics-tier small{color:var(--color-muted);margin-left:var(--space-2);font-size:.75rem;font-weight:400}.statistics-tier dl{justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin:0;display:flex}.statistics-tier dl>div{gap:var(--space-1);display:grid}.statistics-tier dt{color:var(--color-muted);font-size:.8rem}.statistics-tier dd{margin:0;font-size:.95rem}.price-history{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.price-history-event{border-left:2px solid var(--color-border);min-width:0;padding-left:var(--space-4)}.price-history-event h3{align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-3);flex-wrap:wrap;font-size:.95rem;display:flex}.price-history-event h3 small{color:var(--color-muted);font-size:.75rem;font-weight:400}.price-history-event ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.price-history-event li{align-items:start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;font-size:.85rem;display:grid}.price-history-name{overflow-wrap:anywhere;min-width:0}.price-history-change{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.price-history-change strong{white-space:nowrap;font-size:.85rem}.price-history-direction{white-space:nowrap;color:var(--color-primary);font-size:.8rem}.statistics-skeleton{gap:var(--space-5);display:grid}.statistics-skeleton-summary{background:var(--color-skeleton);border-radius:var(--radius-sm);height:100px}.statistics-skeleton-card{background:var(--color-skeleton);border-radius:var(--radius-sm)}.statistics-skeleton-card>div{aspect-ratio:4/3}.statistics-skeleton-card>span{border-top:4px solid var(--color-background);height:128px;display:block}.comments-section{gap:var(--space-5);border-top:1px solid var(--color-border);padding-top:var(--space-6);min-width:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.comment-form{gap:var(--space-2);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border);display:grid}.comment-form label{font-size:.85rem;font-weight:600}.comment-form input,.comment-form textarea{padding:var(--space-3);width:100%;min-width:0}.comment-form textarea{resize:vertical;max-width:100%;min-height:110px}.comment-nickname{gap:var(--space-2);max-width:320px;margin-bottom:var(--space-3);display:grid}.comment-writing-as{color:var(--color-muted);margin-bottom:var(--space-2);font-size:.85rem}.comment-form-actions{justify-content:space-between;gap:var(--space-3);align-items:center;display:flex}.comment-invalid{color:var(--color-error);font-size:.85rem}.comment-success{color:var(--color-primary);font-size:.85rem}.comment-list{margin:0;padding:0;list-style:none}.comment-item{gap:var(--space-3);border-bottom:1px solid var(--color-border);padding:var(--space-4) 0;grid-template-columns:36px minmax(0,1fr);display:grid}.comment-avatar{background:var(--color-skeleton);width:36px;height:36px;color:var(--color-muted);border-radius:50%;place-items:center;font-size:.85rem;display:grid;overflow:hidden}.comment-avatar img{object-fit:cover;width:100%;height:100%}.comment-body{min-width:0}.comment-author{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;font-size:.85rem;display:flex}.comment-author span,.comment-author time{color:var(--color-muted);font-size:.75rem}.comment-body>p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:var(--space-2);font-size:.95rem}.comment-delete{margin-top:var(--space-2);padding:8px 12px}.comments-more{justify-content:center;display:flex}@media (width<=1000px){.statistics-candidate-tier>.statistics-candidates{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=900px){.statistics-candidates{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-candidate-tier>.statistics-candidates{grid-template-columns:repeat(3,minmax(0,1fr))}.statistics-combinations{grid-template-columns:minmax(0,1fr)}}@media (width<=680px){.statistics-page h1{font-size:1.65rem}.statistics-page{gap:var(--section-gap)}.statistics-summary{gap:var(--space-4)}.statistics-summary>div{min-width:120px}.statistics-summary>p{width:100%;margin-left:0}.statistics-candidates{gap:var(--space-3)}.statistics-candidate-tier>.statistics-candidates{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-candidate-body{padding:var(--space-3)}.statistics-candidate-title{flex-wrap:wrap}.statistics-rate{font-size:1.35rem}.statistics-tier{grid-template-columns:minmax(0,1fr)}.price-history-event li{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}}.statistics-summary strong,.statistics-rate,.statistics-tier dd,.price-history-change{font-variant-numeric:tabular-nums}.comment-author>span:first-of-type{background:var(--color-surface-muted);border-radius:var(--radius-sm);padding:2px 6px}.comment-item:last-child{border-bottom:0}@media (width<=680px){.comments-section{padding:var(--space-4)}.comment-form-actions{flex-wrap:wrap}}.share-page{letter-spacing:0;min-width:0}.share-page h1,.share-card h2{letter-spacing:0;font-size:1.8rem}.share-page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.share-page-heading>a{color:var(--color-primary);text-underline-offset:4px;font-size:.85rem;text-decoration:underline}.share-toolbar,.share-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.share-toolbar{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);justify-content:space-between}.share-fit{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:8px;padding:3px;display:flex}.share-fit .button{min-height:var(--control-height);padding:6px 12px}.share-fit [aria-pressed=true]{color:var(--color-primary);background:var(--color-primary-soft);box-shadow:inset 0 0 0 1px var(--color-primary)}.share-notice{min-height:28px;color:var(--color-primary);margin:8px 0;font-size:.85rem}.share-manual{gap:8px;margin-bottom:24px;font-size:.85rem;display:grid}.share-manual input{width:100%;min-width:0;padding:10px}.share-manual p{color:var(--color-muted)}.share-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;padding:32px;container-type:inline-size}.share-card-heading{border-bottom:1px solid var(--color-border);gap:12px;padding-bottom:24px;display:grid}.share-brand{color:var(--color-primary);align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:flex}.share-brand>span{color:#fff;background:var(--color-primary);border-radius:5px;place-items:center;width:28px;height:28px;display:grid}.share-card h2{overflow-wrap:anywhere;line-height:1.4}.share-rule{font-size:1.05rem;font-weight:600}.share-snapshot{color:var(--color-muted);font-size:.8rem}.share-card h3{margin:0;font-size:1rem}.share-price-board{gap:20px;padding:24px 0;display:grid}.share-tier{grid-template-columns:52px minmax(0,1fr);gap:16px;display:grid}.share-tier h4{color:var(--color-text);margin:8px 0 0;font-size:1.2rem}.share-candidate-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px;display:grid}.share-candidate{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:0;overflow:hidden}.share-candidate.is-selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.share-candidate-caption{gap:4px;padding:8px;display:grid}.share-candidate-caption strong{overflow-wrap:anywhere;font-size:.8rem;line-height:1.5}.share-selected{min-height:18px;color:var(--color-muted);font-size:.7rem}.is-selected .share-selected{color:var(--color-primary);font-weight:650}.share-card[data-fit=contain] .candidate-image img{object-fit:contain}.share-card .candidate-fallback>span{font-size:1.5rem}.share-team{border-top:1px solid var(--color-border);padding:24px 0}.share-team-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.share-team-heading h3{color:var(--color-primary);font-size:1.35rem}.share-team-heading>span{color:var(--color-muted);font-size:.8rem}.share-team-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;display:grid}.share-team-candidate{border-top:3px solid var(--color-primary);min-width:0}.share-team-caption{gap:6px;padding-top:10px;font-size:.9rem;display:grid}.share-team-caption strong{overflow-wrap:anywhere;line-height:1.5}.share-team-caption span{color:var(--color-primary);font-weight:700}.share-card-footer{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;padding-top:24px;display:flex}.share-card-footer p{font-size:1rem}.share-card-footer strong{color:var(--color-primary);font-size:1.7rem}.share-card-footer>span{color:var(--color-muted);font-size:.8rem}.share-export-target{width:1080px;max-width:none;margin:0;padding:32px}.share-skeleton{border:1px solid var(--color-border);background:#fff;gap:24px;padding:32px;display:grid}.share-skeleton-title,.share-skeleton-copy,.share-skeleton-row>div{background:var(--color-skeleton);border-radius:var(--radius-sm)}.share-skeleton-title{width:min(100%,360px);height:36px}.share-skeleton-copy{width:min(100%,220px);height:24px}.share-skeleton-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.share-skeleton-row>div{aspect-ratio:4/5}@container (width<=600px){.share-tier{grid-template-columns:minmax(0,1fr);gap:10px}.share-tier h4{margin-top:0}.share-candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.share-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.share-card-heading h2{font-size:1.35rem}.share-rule{font-size:.9rem}}@media (width<=680px){.share-page h1{font-size:1.5rem}.share-card:not(.share-export-target),.share-skeleton{padding:16px}.share-skeleton-row{grid-template-columns:repeat(2,minmax(0,1fr))}.share-actions{width:100%}.share-actions>.button{flex:1}}.challenge-editor{letter-spacing:0}.editor-page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.editor-page-heading h1,.editor-login h1{letter-spacing:0;font-size:1.8rem}.editor-page-heading a{color:var(--color-primary);text-underline-offset:4px;font-size:.85rem;text-decoration:underline}.editor-layout{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 240px;align-items:start;display:grid}.editor-main{border:0;min-width:0;margin:0;padding:0}.editor-sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.editor-section{padding:var(--space-5);margin-bottom:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);min-width:0}.editor-section h2,.editor-summary h2{letter-spacing:0;margin-bottom:16px;font-size:1.2rem}.editor-metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.editor-full{grid-column:1/-1}.editor-field{gap:var(--space-2);align-content:start;min-width:0;display:grid}.editor-field label{font-size:.85rem;font-weight:600}.editor-field input,.editor-field textarea,.editor-field select{width:100%;min-width:0;padding:9px 10px;font-size:.9rem}.editor-field textarea{resize:vertical;min-height:88px}.editor-field [aria-invalid=true]{border-color:var(--color-error)}.editor-field p{font-size:.75rem;line-height:1.5}.editor-field-error{color:var(--color-error);font-size:.8rem}.editor-tag-input{gap:8px;min-width:0;display:flex}.editor-tag-input input{flex:1}.editor-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.editor-tags li{min-width:0;max-width:100%;color:var(--color-primary);border-bottom:1px solid var(--color-border);align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.editor-tags button{font:inherit;color:var(--color-muted);min-width:var(--control-height);min-height:var(--control-height);background:0 0;border:0;font-size:1.1rem}.editor-rule-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.editor-dynamic{padding:var(--space-4);border-radius:var(--radius-sm);background:var(--color-primary-soft);margin-top:16px;font-size:.85rem}.editor-dynamic label{align-items:center;gap:8px;font-weight:600;display:inline-flex}.editor-dynamic input{accent-color:var(--color-primary);width:18px;height:18px}.editor-dynamic p{color:var(--color-muted);margin-top:4px;font-size:.8rem}.editor-board{box-shadow:none;background:0 0;border:0;padding:0}.editor-tier{border-top:1px solid var(--color-border);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:var(--space-4);grid-template-columns:108px minmax(0,1fr);gap:16px;display:grid}.editor-tier-heading{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.editor-tier-heading h3{margin:0;font-size:1.2rem}.editor-tier-heading .button{min-height:var(--control-height);font-size:.8rem}.editor-tier-empty{color:var(--color-muted);font-size:.8rem}.editor-candidate-row{overscroll-behavior-x:contain;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start;gap:16px;min-width:0;padding:2px 2px 12px;display:flex;overflow-x:auto}.editor-candidate-row>.editor-candidate{flex:0 0 240px}.editor-candidate-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.editor-image-drop{border:2px dashed var(--color-border);border-radius:var(--radius-sm);justify-items:start;gap:8px;padding:12px;font-size:.8rem;display:grid;position:relative}.editor-image-drop.is-drag-over{border-color:var(--color-primary);background:var(--color-primary-soft)}.editor-image-drop[aria-busy=true]{border-style:solid}.editor-image-drop small{color:var(--color-muted)}.editor-image-drop p{overflow-wrap:anywhere}.editor-candidate{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);min-width:0;overflow:hidden}.editor-candidate-heading{justify-content:space-between;align-items:center;gap:8px;padding:4px 8px 4px 12px;display:flex}.editor-candidate-heading h3{color:var(--color-muted);margin:0;font-size:.8rem}.editor-order{display:flex}.editor-order .button{height:var(--control-height);min-height:var(--control-height);width:var(--control-height);padding:0;font-size:1.1rem}.editor-candidate-fields{gap:12px;padding:12px;display:grid}.editor-candidate-actions{align-items:end;gap:8px;display:flex}.editor-candidate-actions>div{flex:1}.editor-candidate-actions .button{padding:8px}.editor-outside{border-top:2px solid var(--color-error);padding-top:16px}.editor-outside h3{margin:0 0 8px;font-size:1rem}.editor-outside>p{margin-bottom:16px}.editor-summary{top:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);box-shadow:var(--shadow-card);gap:16px;display:grid;position:sticky}.editor-summary h2{margin:0}.editor-summary dl{gap:12px;margin:0;font-size:.85rem;display:grid}.editor-summary dl>div{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.editor-summary dt{color:var(--color-muted)}.editor-summary dd{font-variant-numeric:tabular-nums;margin:0;font-weight:650}.editor-valid{color:var(--color-primary);font-size:.9rem;font-weight:650}.editor-validation{color:var(--color-error);gap:8px;margin:0;padding-left:18px;font-size:.75rem;display:grid}.editor-dirty{color:var(--color-muted);font-size:.8rem}.editor-summary .state{text-align:left;align-items:start;padding:0}.editor-field .state{text-align:left;align-items:start;padding:12px 0}.editor-undo{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:.85rem;display:flex;position:sticky;bottom:16px}.editor-version-warning{color:var(--color-error);margin-bottom:20px;padding:12px 0;font-size:.85rem}.editor-login{justify-items:start;gap:16px;padding:24px 0;display:grid}.editor-login p{color:var(--color-muted)}.editor-skeleton{gap:24px;display:grid}.editor-skeleton-title{background:var(--color-skeleton);border-radius:var(--radius-sm);width:min(100%,360px);height:36px}.editor-skeleton-fields{background:var(--color-skeleton);border-radius:var(--radius-sm);height:200px}.editor-skeleton-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.editor-skeleton-row>div{background:var(--color-skeleton);border-radius:var(--radius-sm);height:260px}@media (width<=900px){.editor-layout{grid-template-columns:minmax(0,1fr)}.editor-summary{padding:var(--space-5);position:static}.editor-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.editor-summary .button[type=submit]{width:100%}}@media (width<=680px){.editor-page-heading h1,.editor-login h1{font-size:1.5rem}.editor-metadata-grid{grid-template-columns:minmax(0,1fr)}.editor-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-tier{grid-template-columns:72px minmax(0,1fr);gap:8px}.editor-tier-heading .button{white-space:normal;padding:6px 8px}.editor-candidate-row{gap:12px}.editor-candidate-row>.editor-candidate{flex-basis:220px}.editor-skeleton-row{grid-template-columns:minmax(0,1fr)}}.editor-selection-groups{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);gap:8px;margin-bottom:20px;display:grid}.editor-group-toggle{align-items:center;gap:8px;font-weight:650;display:flex}.editor-group-toggle input{width:18px;height:18px}.editor-group-toggle span{color:var(--color-primary);font-size:.75rem}.editor-group-list{gap:12px;padding:0;list-style:none;display:grid}.editor-group-list li{align-items:end;gap:8px;display:flex}.editor-group-list .editor-field{flex:1;min-width:0}.editor-group-actions{flex-wrap:wrap;gap:4px;display:flex}.editor-rule-grid input[readonly]{background:var(--color-background)}@media (width<=680px){.editor-section{padding:var(--space-4)}.editor-board{padding:0}.editor-tier{padding:var(--space-3);grid-template-columns:minmax(0,1fr)}.editor-tier-heading{flex-direction:row;justify-content:space-between;align-items:center}.editor-group-list li{flex-wrap:wrap}.editor-group-list .editor-field{flex-basis:100%}.editor-summary dl{grid-template-columns:minmax(0,1fr)}.editor-undo{flex-wrap:wrap}.editor-field input,.editor-field textarea,.editor-field select{font-size:1rem}}.my-challenges{letter-spacing:0}.management-page-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px;display:flex}.management-page-heading h1,.management-login h1{letter-spacing:0;margin-bottom:8px;font-size:1.8rem}.management-page-heading p,.management-login p{color:var(--color-muted);font-size:.9rem}.management-status{color:var(--color-primary);min-height:20px;margin-bottom:12px;font-size:.9rem}.management-total{color:var(--color-muted);margin-bottom:12px;font-size:.85rem}.management-list{gap:var(--space-4);display:grid}.management-row{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:20px;padding:16px;display:grid}.management-row-image{min-width:0}.management-row .challenge-image{aspect-ratio:4/3;border-radius:4px;overflow:hidden}.management-row .image-fallback{gap:4px}.management-row .image-fallback>span:first-child{font-size:1.6rem}.management-row .image-fallback>span:last-child{font-size:.6rem}.management-row-main{gap:10px;min-width:0;display:grid}.management-row-title{overflow-wrap:anywhere;letter-spacing:0;margin:0;font-size:1.05rem;line-height:1.5}.management-row-title a:hover{text-underline-offset:3px;text-decoration:underline}.management-row-metrics{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px 16px;font-size:.85rem;display:flex}.management-row-metrics strong{color:var(--color-primary)}.management-row-metrics>span:last-child{color:var(--color-muted)}.management-row-meta{color:var(--color-muted);flex-wrap:wrap;gap:4px 12px;font-size:.75rem;display:flex}.management-row-actions{flex-wrap:wrap;justify-content:end;align-items:center;gap:6px;max-width:288px;display:flex}.management-row-actions .button{min-height:var(--control-height);padding:6px 10px;font-size:.8rem}.management-delete{color:var(--color-error)}.management-pagination{justify-content:center;align-items:center;gap:20px;padding:24px 0;font-size:.85rem;display:flex}.management-pagination .button{width:var(--control-height);height:var(--control-height);padding:0}.management-empty{text-align:center;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-7) var(--space-4);justify-items:center;gap:20px;display:grid}.management-empty h2{letter-spacing:0;font-size:1.2rem}.management-login{justify-items:start;gap:16px;padding:24px 0;display:grid}.management-refresh{text-align:center;color:var(--color-muted);font-size:.8rem}.management-sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.management-skeleton{gap:12px;padding-top:16px;display:grid}.management-skeleton-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:120px 1fr;gap:16px;padding:16px;display:grid}.management-skeleton-row>div{background:var(--color-skeleton);border-radius:4px;grid-row:span 2;height:90px}.management-skeleton-row>span{background:var(--color-skeleton);border-radius:4px;width:min(100%,360px);height:24px}.management-dialog{width:min(100%,460px);padding:24px}.management-dialog--wide{width:min(100%,700px)}.management-dialog-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;display:flex}.management-dialog-heading h2{letter-spacing:0;margin:0;font-size:1.25rem;line-height:1.5}.management-dialog-heading .management-close{min-width:var(--control-height);width:var(--control-height);height:var(--control-height);min-height:var(--control-height);padding:0;font-size:1.4rem}.management-dialog-description,.management-delete-title{overflow-wrap:anywhere;font-size:.9rem;line-height:1.6}.management-delete-title{margin:16px 0;font-weight:650}.management-dialog .state{padding:20px 0}.management-dialog .confirmation-actions{margin-top:24px}.management-history{gap:28px;margin-top:24px;display:grid}.management-history h3{letter-spacing:0;margin-bottom:16px;font-size:1rem}.management-timeline{margin:0;padding:0;list-style:none}.management-event{border-left:2px solid var(--color-border);padding:0 0 20px 18px;font-size:.85rem;position:relative}.management-event:last-child{padding-bottom:0}.management-event p{color:var(--color-muted);margin-top:6px;font-size:.8rem}.management-event time{color:var(--color-muted);font-size:.75rem}.management-auto{border-left-color:var(--color-primary)}.management-auto strong{color:var(--color-primary)}.management-versions{gap:0;margin:0;padding:0;list-style:none;display:grid}.management-version{border-top:1px solid var(--color-border);overflow-wrap:anywhere;padding:12px 0;font-size:.85rem}.management-version-heading{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.management-version-heading span{color:var(--color-primary);font-size:.75rem}.management-version p{color:var(--color-muted);margin-top:6px;font-size:.8rem}.management-version dl{gap:6px;margin:8px 0 0;font-size:.75rem;display:grid}.management-version dl>div{grid-template-columns:64px minmax(0,1fr);gap:8px;display:grid}.management-version dt{color:var(--color-muted)}.management-version dd{margin:0}@media (width<=900px){.management-row{grid-template-columns:112px minmax(0,1fr);gap:12px 16px}.management-row-actions{grid-column:2;justify-content:start;max-width:none}}@media (width<=680px){.management-page-heading h1,.management-login h1{font-size:1.5rem}.management-page-heading .button{font-size:.85rem}.management-row{grid-template-columns:88px minmax(0,1fr);padding:12px}.management-row-actions{grid-column:1/-1;gap:8px}.management-row-title{font-size:.95rem}.management-row-meta{font-size:.7rem}.management-dialog{padding:20px}.management-skeleton-row{grid-template-columns:88px 1fr;padding:12px}}.management-row-actions .management-delete{margin-left:var(--space-2);border-left:1px solid var(--color-border)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#f7f3ea;--color-surface:#fff;--color-text:#1f1c16;--color-muted:#70685b;--color-border:#e7ddc8;--color-primary:#84611f;--color-accent:#c89b3c;--color-primary-hover:#9b7427;--color-accent-hover:#b68a30;--color-primary-soft:#f6efdf;--color-surface-muted:#f0ebe1;--color-error:#963f38;--color-error-hover:#7d302b;--color-error-soft:#fbefed;--color-disabled:#eee9df;--color-skeleton:#eae3d6;--shadow-card:0 2px 8px #1f1c1608;--shadow-popover:0 8px 24px #1f1c1614;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--content-width:1120px;--page-gutter:clamp(16px, 3vw, 24px);--section-gap:clamp(32px, 4vw, 48px);--control-height:44px;--font-family:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif}*{box-sizing:border-box}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-family);word-break:keep-all;overflow-wrap:anywhere;margin:0;line-height:1.6}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}:focus-visible{outline:3px solid var(--color-primary);outline-offset:4px}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.055em;font-size:clamp(1.9rem,4vw,3.2rem);font-weight:750;line-height:1.25}h2{letter-spacing:-.04em;font-size:1.5rem;line-height:1.35}.muted,.helper-text{color:var(--color-muted)}.helper-text{font-size:.85rem}.eyebrow{color:var(--color-primary);letter-spacing:.015em;margin-bottom:var(--space-2);font-size:.8rem;font-weight:650}.page-container{max-width:var(--content-width);padding:0 var(--page-gutter);min-width:0;margin:0 auto}.site-header{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.header-inner{max-width:var(--content-width);padding:var(--space-3) var(--page-gutter);justify-content:space-between;align-items:center;gap:var(--space-4);min-height:76px;margin:auto;display:flex}.brand{align-items:center;gap:var(--space-3);min-height:var(--control-height);letter-spacing:-.035em;flex-shrink:0;font-size:1.15rem;font-weight:750;display:inline-flex}.brand-mark{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text);background:var(--color-accent);place-items:center;font-size:1.4rem;display:grid}.header-nav{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;font-size:.9rem;display:flex}.nav-link{min-height:var(--control-height);padding:var(--space-2);border-radius:var(--radius-sm);align-items:center;font-weight:600;display:inline-flex}.nav-link:hover{color:var(--color-primary);background:var(--color-primary-soft)}.user-name{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.header-feedback{max-width:var(--content-width);padding:0 var(--page-gutter) var(--space-3);margin:auto}.header-feedback .state{padding:var(--space-3);align-items:flex-start;gap:var(--space-2);text-align:left}.header-nav .state{flex-direction:row;padding:0;font-size:.8rem}main{min-height:calc(100svh - 170px);padding:var(--space-7) 0 var(--space-8)}.page-stack{gap:var(--section-gap);display:grid}.page-heading .muted{margin-top:var(--space-4)}.home-intro{gap:var(--space-7);padding:var(--space-5) 0;grid-template-columns:minmax(0,1fr) 250px;align-items:center;display:grid}.intro-description{color:var(--color-muted);margin-top:var(--space-5);font-size:1rem;line-height:1.85}.budget-note{background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);position:relative;overflow:hidden}.budget-note>span:first-child{color:var(--color-primary);font-size:.75rem;font-weight:650}.budget-note strong{letter-spacing:-.06em;color:var(--color-primary);margin:var(--space-2) 0;font-size:3.8rem;font-weight:750;line-height:1.25;display:block}.budget-note p{color:var(--color-muted);font-size:.85rem}.budget-rule{background:var(--color-primary);width:32px;height:3px;margin-top:var(--space-5);border-radius:2px;display:block}.explore-shell{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.search-label{margin-bottom:var(--space-2);font-size:.9rem;font-weight:600;display:block}.search-input{width:100%;padding:var(--space-4) var(--space-5);appearance:none}.search-input:disabled{opacity:1;cursor:not-allowed}.search-input::placeholder{color:var(--color-muted)}.explore-shell .helper-text{margin-top:var(--space-2)}.category-shell{align-items:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;font-size:.85rem;display:flex}.section-label{font-weight:650}.category-pill{background:var(--color-primary-soft);color:var(--color-primary);padding:var(--space-1) var(--space-4);border-radius:99px;font-weight:600}.section-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.period-switch{gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);flex-wrap:wrap;display:inline-flex}.period-switch button{min-height:var(--control-height);border-radius:var(--radius-sm);color:var(--color-muted);background:0 0;border:0;padding:8px 14px;font-size:.85rem}.period-switch button[aria-pressed=true]{background:var(--color-surface);color:var(--color-primary);font-weight:650}.card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);border-radius:var(--radius-sm);text-align:center;border:1px solid #0000;padding:9px 16px;font-size:.85rem;font-weight:600;line-height:1.4;transition:background-color .15s,border-color .15s;display:inline-flex}.button--primary{color:var(--color-text);background:var(--color-accent);border-color:var(--color-accent)}.button--primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.button--secondary:hover:not(:disabled),.button--ghost:hover:not(:disabled){background:var(--color-primary-soft)}.button--ghost{color:var(--color-primary);background:0 0}.button:active:not(:disabled){box-shadow:inset 0 2px 3px #1f1c161f}.button:disabled{opacity:1;background:var(--color-disabled);border-color:var(--color-border);color:var(--color-muted);box-shadow:none}.button--danger{background:var(--color-error);border-color:var(--color-error);color:#fff}.button--danger:hover:enabled{background:var(--color-error-hover);border-color:var(--color-error-hover)}.button--danger-text{color:var(--color-error);background:0 0}.button--danger-text:hover:enabled{background:var(--color-error-soft);border-color:var(--color-error)}.state{padding:var(--space-7) var(--space-5);align-items:center;gap:var(--space-3);color:var(--color-muted);text-align:center;flex-direction:column;font-size:.9rem;display:flex}.state strong{color:var(--color-text);font-size:1rem;font-weight:600}.state--error{color:var(--color-error);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-error-soft)}.state--error strong{color:var(--color-error)}.empty-mark{color:var(--color-primary);background:var(--color-primary-soft);width:40px;height:40px;margin-bottom:var(--space-1);border-radius:50%;place-items:center;font-size:1.15rem;display:grid}.loading-dot{background:var(--color-primary);border-radius:50%;width:8px;height:8px}.not-found{padding:var(--space-6) var(--space-4);text-align:center;justify-items:center;gap:var(--space-5);display:grid}.not-found h1{font-size:2rem}.site-footer{border-top:1px solid var(--color-border);padding:var(--space-5) 0;color:var(--color-muted);font-size:.75rem}.site-footer .page-container{justify-content:space-between;gap:var(--space-4);display:flex}.skip-link{top:-100px;left:var(--space-4);z-index:10;background:var(--color-surface);padding:var(--space-3);border:1px solid var(--color-primary);border-radius:var(--radius-sm);position:absolute}.skip-link:focus{top:var(--space-2)}@media (width<=900px){.header-inner{flex-wrap:wrap}.header-nav:has(.nav-link){justify-content:flex-start;width:100%}.home-intro{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 220px}}@media (width<=680px){.header-inner{gap:var(--space-2)}.brand{font-size:1rem}.header-nav{gap:var(--space-2);font-size:.85rem}.header-inner:has(.nav-link){grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(2, minmax(var(--control-height), auto));display:grid}.header-inner:has(.nav-link) .brand{z-index:1;grid-area:1/1/auto/3;justify-self:start;position:relative}.header-nav:has(.nav-link){grid-area:1/1/3/-1;grid-template-columns:subgrid;grid-template-rows:subgrid;align-items:stretch;display:grid}.header-nav .nav-link{grid-row:2}.header-nav .nav-link:first-child{grid-column:1}.header-nav .nav-link+.nav-link{grid-column:2}.header-nav:has(.nav-link) .user-name{grid-area:1/3;width:100%;min-width:0}.header-nav:has(.nav-link)>.button{padding-inline:var(--space-2);grid-area:2/3}.header-nav .nav-link{justify-content:center}.header-nav .user-name{max-width:100%;margin:0}main{padding-top:var(--space-6);padding-bottom:var(--space-7)}.home-intro{gap:var(--space-5);grid-template-columns:minmax(0,1fr);padding-top:0}.budget-note{padding:var(--space-4) var(--space-5);column-gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.budget-note strong{grid-area:1/2/3;margin:0;font-size:2.5rem}.budget-rule,.desktop-break{display:none}.explore-shell{padding:var(--space-4)}.section-heading{margin-bottom:var(--space-4);flex-wrap:wrap;align-items:flex-start}.section-heading>.helper-text{display:none}h2{font-size:1.25rem}.state{padding:var(--space-6) var(--space-4)}.site-footer .page-container{flex-wrap:wrap}}@media (width<=380px){.header-nav:not(:has(.nav-link)){width:100%}.header-nav:not(:has(.nav-link)) .button{width:100%}}:where(input:not([type=checkbox]):not([type=file]),textarea,select){min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface);padding:10px 12px;line-height:1.5}:where(input,textarea)::placeholder{color:var(--color-muted);opacity:1}:where(input,textarea,select):hover:enabled{border-color:var(--color-muted)}:where(input,textarea,select):focus-visible{border-color:var(--color-primary);outline:2px solid var(--color-primary);outline-offset:2px}:where(input,textarea,select)[aria-invalid=true]{border-color:var(--color-error)}:where(input,textarea,select):disabled{background:var(--color-disabled);color:var(--color-muted);cursor:not-allowed}:where(input[type=checkbox]){accent-color:var(--color-primary);flex-shrink:0;width:18px;height:18px}:where(label:has(input[type=checkbox])){min-height:var(--control-height)}.confirmation-backdrop{z-index:50;padding:var(--space-4);background:#1f1c166b;place-items:center;display:grid;position:fixed;inset:0}.confirmation-dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:min(100%,460px);max-height:calc(100dvh - 32px);padding:var(--space-5);gap:var(--space-4);box-shadow:var(--shadow-popover);letter-spacing:0;display:grid;overflow:auto}.confirmation-dialog h2{letter-spacing:-.025em;font-size:1.3rem}.confirmation-dialog p{color:var(--color-muted);font-size:.9rem}.confirmation-actions{justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}:is(.editor-page-heading,.statistics-page-heading,.share-page-heading)>a,.detail-statistics-link{min-height:var(--control-height);align-items:center;display:inline-flex}@media (width<=680px){.confirmation-dialog{padding:var(--space-4)}.confirmation-actions>.button{flex:1}}@media (prefers-reduced-motion:reduce){.button{transition:none}}
