.landing-page{background:var(--ink);color:#fff;min-height:100vh;padding:22px;display:grid}.landing-panel{background:#1d211d;border:1px solid #3f443f;border-radius:10px;flex-direction:column;justify-content:space-between;width:min(100%,760px);margin:auto;padding:clamp(22px,6vw,54px);display:flex}.landing-brand{align-items:center;gap:11px;display:flex}.landing-brand>span{background:var(--signal);width:40px;height:40px;color:var(--ink);border:2px solid #fff;border-radius:5px;place-items:center;font-weight:950;display:grid}.landing-brand>strong{color:#fff;letter-spacing:-.02em;text-transform:uppercase;font-size:1rem}.landing-copy{max-width:590px;margin:clamp(62px,13vh,110px) 0 48px}.landing-copy .eyebrow{color:#adb3aa}.landing-copy h1{color:#fff;max-width:580px}.landing-copy>p:last-child{color:#b9beb7;max-width:510px;margin-bottom:0}.landing-action{justify-items:start;gap:10px;display:grid}.landing-action button{border:2px solid var(--signal);background:var(--signal);min-height:48px;color:var(--ink);border-radius:5px;padding:11px 18px;font-weight:900}.landing-action small{color:#9fa59d}.landing-action p{color:#f3b8a9;margin:0;font-size:.78rem}.landing-page>footer{color:#858b84;place-self:end center;margin-top:22px;font-size:.7rem}.landing-page.is-loading{place-items:center}@media (width>=720px){.landing-page{padding:40px}}.upload-page{padding-bottom:18px}.upload-heading{margin-bottom:20px}.notice,.card,.uploaded-preview,.climb-details-form,.saved-climb-confirmation{border:1px solid var(--line);background:var(--paper);border-radius:8px}.notice{background:#fff7d9;border-left:4px solid #d6a427;margin-bottom:13px;padding:12px 14px}.card{padding:16px}.two-column{gap:12px;margin-top:12px;display:grid}.section-title{align-items:flex-start;gap:11px;margin-bottom:14px;display:flex}.section-title>span{border:2px solid var(--ink);background:var(--signal);width:29px;height:29px;color:var(--ink);border-radius:3px;flex:none;place-items:center;font-size:.72rem;font-weight:900;display:grid}.section-title h2{margin:2px 0 3px;font-size:1.05rem;font-weight:900}.section-title p{margin:0;font-size:.78rem}.file-picker{min-height:88px;color:var(--ink);cursor:pointer;background:#f1f3ed;border:2px dashed #747b73;border-radius:5px;place-items:center;font-weight:900;display:grid}.file-picker:hover{border-color:var(--ink);background:#e8ebdf}.file-picker input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.facts{border:1px solid var(--line);background:#fff;border-radius:5px;grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0 0;display:grid}.facts div{min-width:0;padding:9px 10px}.facts div+div{border-left:1px solid var(--line)}.facts dt{color:#70766e;letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:850}.facts dd{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.75rem;overflow:hidden}.actions,.progress,.form-actions,.uploaded-preview-heading{justify-content:space-between;align-items:center;gap:9px;display:flex}.card>button,.actions button,.form-actions button{border:2px solid var(--ink);background:var(--ink);color:#fff;border-radius:5px;min-height:42px;padding:9px 14px;font-weight:900}.actions{justify-content:flex-start}.actions button.cancel{color:var(--danger);background:0 0;border-color:#0000}.progress{color:#656b63;margin-top:14px;font-size:.7rem;font-weight:750}progress{width:100%;height:8px;accent-color:var(--signal-dark)}.error,.success{border-radius:4px;margin:10px 0 0;padding:8px 10px;font-size:.75rem}.error{border-left:3px solid var(--danger);color:#802d1d;background:#f8e5df}.success{color:#365b0f;background:#e7f2d5;border-left:3px solid #5b8619}.post-upload-stack{gap:12px;margin-top:12px;display:grid}.uploaded-preview,.climb-details-form{padding:16px}.uploaded-preview-heading{margin-bottom:12px}.uploaded-preview-heading>div{align-items:center;gap:8px;display:flex}.uploaded-preview-heading>span,.form-heading>span{color:#747a72;font-size:.66rem;font-weight:800}.success-mark{background:var(--signal);width:24px;height:24px;color:var(--ink);border-radius:50%;place-items:center;font-weight:950;display:grid}.uploaded-preview video{object-fit:contain;background:#111;border-radius:4px;width:100%;max-height:65vh;display:block}.form-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.form-heading h2{margin-bottom:0}.form-grid{gap:12px;display:grid}.field{gap:6px;display:grid}.field>span{color:#555b54;font-size:.7rem;font-weight:850}.field input,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #9ba199;border-radius:4px;padding:10px 11px}.field textarea{resize:vertical;min-height:98px}.field input:focus,.field textarea:focus{border-color:var(--ink)}.form-actions{flex-direction:column;align-items:flex-start;margin-top:14px}.form-actions button{background:var(--signal);color:var(--ink)}.form-actions span{color:var(--muted);font-size:.7rem}.saved-climb-confirmation{gap:8px;padding:18px;display:grid}.saved-climb-confirmation>span{color:var(--muted);font-size:.72rem}.saved-climb-confirmation>strong{font-size:1.25rem}.saved-climb-confirmation .primary-link{justify-self:start;margin-top:4px}.file-picker:focus-within{outline:3px solid var(--signal-dark);outline-offset:3px}@media (width>=620px){.two-column,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-wide{grid-column:1/-1}.form-actions{flex-direction:row;justify-content:flex-start;align-items:center}}@media (width>=960px){.card,.uploaded-preview,.climb-details-form{padding:20px}.post-upload-stack{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:start}}.settings-grid{gap:12px;display:grid}.settings-card{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:18px}.settings-card p:last-child{margin-bottom:0}.profile-settings-card{border-top:3px solid var(--ink);align-items:center;gap:15px;display:flex}.profile-settings-card h2{margin-bottom:4px}.account-copy{min-width:0}.account-email{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.account-action{border:2px solid var(--ink);background:var(--signal);min-height:42px;color:var(--ink);border-radius:5px;margin-top:4px;padding:9px 14px;font-weight:900}.account-message{margin:9px 0 0;font-size:.75rem}.error-message{color:var(--danger)}.settings-row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.settings-row p:last-child{margin-bottom:0}@media (width>=620px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-settings-card{grid-column:1/-1}}.library-heading{flex-direction:column}.library-summary{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);background:0 0;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:32px;display:grid}.library-summary div{text-align:left;min-width:0;padding:15px 8px}.library-summary div+div{border-left:1px solid var(--line);padding-left:13px}.library-summary strong{color:var(--ink);letter-spacing:-.04em;margin-bottom:3px;font-size:1.35rem;font-weight:900;display:block}.library-summary span{color:var(--muted);font-size:.64rem;font-weight:750}.section-block{margin-top:22px}.section-heading-row{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:13px;display:flex}.section-heading-row h2{margin-bottom:0}.quiet-label{color:#737970;font-size:.7rem;font-weight:750}.video-grid{gap:12px;display:grid}.video-card{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:7px;text-decoration:none;transition:border-color .14s,transform .14s;overflow:hidden}.video-card:active{transform:scale(.992)}.video-card-visual{aspect-ratio:16/9;border-bottom:1px solid var(--line);place-items:center;display:grid;position:relative;overflow:hidden}.video-card-visual.saved-video,.review-player-placeholder.saved-video{background:#303530}.introduction-visual{background:var(--signal);min-height:100%;color:var(--ink);align-content:space-between;padding:22px;display:grid}.introduction-visual>span{letter-spacing:.12em;font-size:.72rem;font-weight:950}.introduction-visual>strong{letter-spacing:-.055em;max-width:13ch;font-size:clamp(1.25rem,5vw,2rem);font-weight:950;line-height:.96}.grade-pill,.duration-pill{border-radius:3px;padding:5px 7px;font-size:.64rem;font-weight:900;position:absolute}.grade-pill{background:var(--signal);color:var(--ink);top:10px;left:10px}.duration-pill{background:var(--ink);color:#fff;bottom:10px;right:10px}.play-mark{color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:42px;height:42px;padding-left:3px;font-size:.8rem;display:grid;position:relative}.video-card-copy{gap:3px;padding:13px;display:grid}.video-card-copy strong{font-size:.95rem;font-weight:850}.video-card-copy span{color:var(--muted);font-size:.76rem}.video-card-copy small{color:#868c84;font-size:.67rem}.review-heading{align-items:flex-start}.review-layout{gap:14px;display:grid}.review-player-card,.detail-card{border:1px solid var(--line);background:var(--paper);border-radius:8px}.review-player-card{padding:7px;overflow:hidden}.drive-player{gap:8px;display:grid}.drive-video-player{aspect-ratio:9/12;object-fit:contain;background:#101210;border-radius:4px;width:100%;max-height:68vh;display:block}.review-player-placeholder{aspect-ratio:9/12;border-radius:4px;place-items:center;max-height:68vh;display:grid;position:relative;overflow:hidden}.review-player-placeholder>span{background:var(--ink);color:#fff;border-radius:3px;padding:5px 7px;font-size:.66rem;font-weight:850;position:absolute;bottom:10px;right:10px}.review-player-placeholder>strong{color:#fff;font-size:1.1rem}.drive-load-state{text-align:center;padding:22px}.drive-load-state>div{justify-items:center;gap:10px;max-width:310px;display:grid}.drive-load-state strong{color:#fff;font-size:1.05rem}.drive-load-state p{color:#c5cbc4;margin:0;font-size:.76rem;line-height:1.45}.drive-load-state button{min-width:132px}.drive-player>progress{width:100%}.drive-retrieval-success,.drive-playback-error,.drive-player>.error{margin:0;padding:7px 6px 2px}.playback-speeds{align-items:center;gap:6px;padding:2px 1px;display:flex}.playback-speeds span{color:var(--muted);margin-right:auto;font-size:.7rem;font-weight:800}.playback-speeds button{border:1px solid var(--line);min-width:48px;min-height:34px;color:var(--muted);background:0 0;border-radius:4px;padding:6px 9px;font-size:.72rem;font-weight:850}.playback-speeds button.is-active{border-color:var(--ink);background:var(--ink);color:#fff}.review-toolbar{gap:4px;padding:8px 0 1px;display:flex}.review-toolbar button{min-height:40px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:4px;flex:1;font-weight:850}.review-toolbar button.is-active{border-color:var(--ink);background:var(--ink);color:#fff}.review-player-card>.helper{padding:4px 6px 2px}.review-details{gap:12px;display:grid}.detail-card{padding:18px}.detail-card p:last-child{margin-bottom:0}.muted-card{background:#e2e5de}.library-error{border-left:3px solid var(--danger);color:#802d1d;background:#f8e5df;padding:10px 12px;font-size:.78rem}@media (width>=620px){.library-heading{flex-direction:row;align-items:flex-end}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=960px){.library-summary{width:min(620px,100%)}.video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.video-card:hover{border-color:var(--ink);transform:translateY(-2px)}.review-layout{grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);align-items:start}.review-player-placeholder,.drive-video-player{aspect-ratio:16/10;max-height:600px}}.app-frame{min-height:100vh}.app-content{min-width:0;padding:64px 0 88px}.desktop-rail{display:none}.mobile-header{z-index:20;border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;height:58px;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}.brand{color:var(--ink);letter-spacing:-.025em;text-transform:uppercase;align-items:center;gap:9px;font-size:.95rem;font-weight:900;text-decoration:none;display:inline-flex}.brand-mark{border:2px solid var(--ink);background:var(--signal);width:31px;height:31px;color:var(--ink);border-radius:4px;place-items:center;font-size:.9rem;font-weight:950;display:grid}.avatar{border:1px solid var(--ink);background:var(--paper);width:34px;height:34px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:.68rem;font-weight:900;text-decoration:none;display:grid}.avatar-large{background:var(--signal);width:58px;height:58px;font-size:.95rem}.mobile-navigation{z-index:20;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);position:fixed;bottom:0;left:0;right:0}.app-navigation{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.nav-link{color:#626860;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:52px;font-size:.72rem;font-weight:850;text-decoration:none;display:flex}.nav-link.is-active{background:var(--ink);color:#fff}.nav-mark{border:1px solid;border-radius:3px;place-items:center;width:23px;height:23px;font-size:.68rem;display:grid}.nav-link[href=\/upload] .nav-mark{border-color:var(--ink);background:var(--signal);color:var(--ink);font-size:1.05rem}.content-page{width:min(100% - 28px,1120px);margin:0 auto;animation:.14s ease-out page-in}@keyframes page-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.page-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin:20px 0 24px;display:flex}.page-heading>div{max-width:650px}.page-heading p:last-child{margin-bottom:0;font-size:.92rem}.eyebrow{color:#4f554e;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-size:.65rem;font-weight:900}.primary-link{border:2px solid var(--ink);background:var(--signal);min-height:44px;color:var(--ink);border-radius:5px;flex:none;justify-content:center;align-items:center;padding:10px 15px;font-weight:900;text-decoration:none;display:inline-flex}.back-link{color:var(--ink);margin-top:10px;font-size:.8rem;font-weight:850;text-decoration:none;display:inline-block}.status-pill{border:1px solid var(--ink);background:var(--signal);min-height:28px;color:var(--ink);border-radius:4px;flex:none;align-items:center;padding:5px 8px;font-size:.65rem;font-weight:850;display:inline-flex}.status-pill.neutral{border-color:var(--line);color:#555b54;background:#e8eae4}.helper{color:#737971;font-size:.75rem;line-height:1.45}.empty-page{padding-top:18vh}.empty-page .primary-link{margin-top:12px}@media (width>=620px){.content-page{width:min(100% - 44px,1120px)}}@media (width>=960px){.app-frame{grid-template-columns:220px minmax(0,1fr);display:grid}.mobile-header,.mobile-navigation{display:none}.desktop-rail{background:var(--ink);border-right:1px solid #2d312d;flex-direction:column;height:100vh;padding:28px 16px 20px;display:flex;position:sticky;top:0}.desktop-rail .brand{color:#fff;padding:0 7px}.desktop-rail .brand-mark{border-color:#fff}.desktop-rail .app-navigation{grid-template-columns:1fr;gap:6px;margin-top:44px;display:grid}.desktop-rail .nav-link{color:#b9beb7;justify-content:flex-start;padding:0 10px;font-size:.8rem}.desktop-rail .nav-link.is-active{background:var(--signal);color:var(--ink)}.profile-chip{color:#fff;border:1px solid #393e39;border-radius:5px;align-items:center;gap:10px;margin-top:auto;padding:9px;text-decoration:none;display:flex}.profile-chip:hover{border-color:#666c64}.profile-chip>span:last-child{min-width:0;display:grid;overflow:hidden}.profile-chip strong{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.profile-chip small{color:#989e97;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.62rem;overflow:hidden}.app-content{padding:0}.content-page{width:min(100% - 64px,1120px);padding:52px 0 64px}.page-heading{margin-top:0}}:root{color:#171a17;font-synthesis:none;text-rendering:optimizelegibility;--ink:#171a17;--muted:#62685f;--line:#cdd1c8;--paper:#fafbf8;--canvas:#eceee8;--signal:#d7c65b;--signal-dark:#95862f;--danger:#a53824;background:#eceee8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}body,button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit}code{overflow-wrap:anywhere}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink)}h1{letter-spacing:-.055em;margin-bottom:10px;font-size:clamp(2.1rem,8vw,3.5rem);font-weight:900;line-height:.98}h2{letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(1.3rem,5vw,1.75rem);font-weight:850;line-height:1.05}p{color:var(--muted);line-height:1.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--signal-dark);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important}}
