:root{color:#18202f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border-bottom:1px solid #dde3ed;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:0 clamp(20px,5vw,72px);display:flex}.brand{letter-spacing:0;font-size:1.05rem;font-weight:800}.nav-actions{align-items:center;gap:10px;display:flex}.nav-actions a,.primary-link,.secondary-link{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:0 16px;font-weight:700;line-height:1;display:inline-flex}.nav-actions a{color:#334155}.nav-actions a:hover{background:#edf2f7}.page-section{width:min(1040px,100% - 40px);margin:0 auto;padding:clamp(52px,9vw,104px) 0}.intro-section{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(28px,6vw,72px);display:grid}.intro-copy{max-width:720px}.eyebrow{color:#0f766e;letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:800}h1{letter-spacing:0;margin:0;font-size:4rem;line-height:.96}p{color:#475569;max-width:640px;margin:18px 0 0;font-size:1.05rem;line-height:1.65}.quick-links{flex-wrap:wrap;gap:12px;display:flex}.primary-link{color:#fff;background:#0f766e}.primary-link:hover{background:#0b5f59}.secondary-link{color:#172554;background:#fff;border:1px solid #b9c7da}.secondary-link:hover{background:#eef4fb}.workbench-section,.status-section{min-height:calc(100vh - 72px)}.status-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.getlink-page{--accent-color:#ff343d;--unlock-color:#78e67a;width:min(820px,100% - 40px);margin:0 auto;padding:34px 0 48px}.unlock-shell{gap:14px;display:grid}.unlock-header{text-align:center;justify-items:center;gap:10px;display:grid}.unlock-header h1{color:#0f172a;max-width:100%;font-size:1.75rem;line-height:1.1}.unlock-header p{color:#0f172a;max-width:100%;margin:0;font-size:1.05rem;font-weight:650;line-height:1.45}.progress-block{width:100%}.progress-line{color:#334155;justify-content:space-between;align-items:center;gap:16px;font-size:.94rem;font-weight:700;display:flex}.progress-line strong{color:#0f172a}.progress-track{background:repeating-linear-gradient(-45deg,#e6e8eb 0 12px,#f1f2f4 12px 24px);border-radius:999px;width:100%;height:9px;margin-top:10px;overflow:hidden}.progress-track span{border-radius:inherit;background:repeating-linear-gradient(-45deg, var(--accent-color) 0, var(--accent-color) 14px, color-mix(in srgb, var(--accent-color), #fff 18%) 14px, color-mix(in srgb, var(--accent-color), #fff 18%) 28px);height:100%;transition:width .18s;display:block}button{font:inherit}.unlock-button,.task-action-button{color:#fff;cursor:pointer;border:0;width:100%;font-weight:800}.unlock-task-list{gap:14px;margin-top:4px;display:grid}.unlock-task-button,.target-unlock-button{color:#fff;border-radius:8px;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;min-height:60px;padding:0 12px;font-size:1rem;font-weight:800;line-height:1.15;display:grid;position:relative;box-shadow:0 9px 18px #0f172a2e}.unlock-task-button{background:var(--accent-color)}button.unlock-task-button:hover{filter:brightness(.96);transform:translateY(-1px)}.unlock-task-button.is-complete{outline-offset:0;outline:2px solid #1f2937}.unlock-task-button.is-loading{cursor:wait;filter:saturate(.95)}.task-button-icon,.task-button-state{justify-content:center;align-items:center;min-width:0;display:inline-flex}.task-button-title{overflow-wrap:anywhere;text-align:center;min-width:0}.video-task-card{gap:12px;display:grid}.video-task-heading{cursor:default}.video-task-card.is-complete .video-task-heading{outline-offset:0;outline:2px solid #1f2937}.target-unlock-button{background:var(--unlock-color);margin-top:2px}.target-unlock-button:not(:disabled):hover{filter:brightness(.96);transform:translateY(-1px)}.target-unlock-button:disabled{color:#64748b;cursor:not-allowed;filter:none;box-shadow:none;background:#dbe3ee}.task-list{gap:14px;display:grid}.empty-tasks{background:#fff;border:1px solid #d8e1ec;border-radius:8px;box-shadow:0 14px 36px #0f172a0f}.youtube-watch-area{gap:14px;display:grid}.youtube-frame{aspect-ratio:16/9;background:#0f172a;border-radius:8px;width:100%;overflow:hidden}.tiktok-frame{aspect-ratio:9/16;background:#0f172a;border-radius:8px;justify-self:center;width:min(100%,420px);overflow:hidden}.youtube-frame iframe,.tiktok-frame iframe{border:0;width:100%;height:100%;display:block}.watch-progress{gap:0;display:grid}.progress-caption{color:#0f172a;text-align:center;max-width:100%;margin:0;font-size:.94rem;font-weight:650;line-height:1.35}.empty-tasks{padding:18px 20px}.empty-tasks p{margin:0}.spin-icon{animation:.75s linear infinite spin}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes spin{to{transform:rotate(360deg)}}.admin-page{width:min(1360px,100% - 40px);margin:0 auto;padding:28px 0 56px}.admin-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.admin-header h1{font-size:2.6rem}.admin-header-actions,.toolbar-actions,.icon-row,.task-add-controls,.switch-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-grid{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:24px;display:grid}.admin-sidebar{gap:16px;display:grid;position:sticky;top:18px}.admin-panel,.editor-section,.validation-panel,.admin-empty-state{background:#fff;border:1px solid #d8e1ec;border-radius:8px;box-shadow:0 14px 34px #0f172a0f}.admin-panel,.editor-section,.validation-panel{padding:18px}.panel-heading,.section-title-row,.editor-toolbar,.admin-task-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.panel-heading{color:#172554;margin-bottom:14px}.panel-heading h2,.validation-panel h2,.section-title-row h3,.editor-toolbar h2,.admin-task-header h4{color:#0f172a;letter-spacing:0;margin:0;font-size:1.05rem;line-height:1.25}.editor-toolbar h2{font-size:1.65rem}.admin-main,.editor-shell{gap:16px;display:grid}.form-grid{gap:12px;display:grid}.form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:7px;min-width:0;display:grid}.field span,.checkbox-field span{color:#334155;font-size:.86rem;font-weight:800;line-height:1.25}.field input,.field select,.field textarea{color:#0f172a;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;line-height:1.35}.field input,.field select{height:42px;padding:0 12px}.field input[type=color]{padding:4px}.field textarea{resize:vertical;min-height:92px;padding:10px 12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#2563eb;outline:3px solid #2563eb24}.field-with-action{grid-template-columns:minmax(0,1fr) 42px;align-items:end;gap:8px;display:grid}.checkbox-field{align-items:center;gap:9px;min-height:34px;display:inline-flex}.checkbox-field input{accent-color:#0f766e;width:18px;height:18px}.admin-button,.icon-button{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;font-weight:850;line-height:1;display:inline-flex}.admin-button{gap:8px;min-height:42px;padding:0 14px}.admin-button-primary{color:#fff;background:#0f766e}.admin-button-secondary{color:#172554;background:#fff;border:1px solid #cbd5e1}.admin-button-danger{color:#fff;background:#be123c}.icon-button{flex:none;width:42px;height:42px}.icon-button-secondary{color:#172554;background:#fff;border:1px solid #cbd5e1}.icon-button-danger{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.admin-button:hover,.icon-button:hover{filter:brightness(.96)}.admin-button:disabled,.icon-button:disabled{color:#94a3b8;cursor:not-allowed;filter:none;background:#eef2f7;border-color:#e2e8f0}.status-pill{color:#334155;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:999px;align-items:center;max-width:100%;min-height:34px;padding:0 10px;font-size:.84rem;font-weight:800;line-height:1;display:inline-flex;overflow:hidden}.link-list{gap:8px;margin-top:12px;display:grid}.link-row{color:#0f172a;text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe3ee;border-radius:8px;gap:5px;width:100%;min-height:58px;padding:10px 12px;display:grid}.link-row.is-selected{background:#ecfdf5;border-color:#0f766e}.link-row span{text-overflow:ellipsis;white-space:nowrap;font-weight:850;line-height:1.25;overflow:hidden}.link-row small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.notice-banner{border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-weight:800;line-height:1.35;display:flex}.notice-success{color:#065f46;background:#d1fae5}.notice-info{color:#1e3a8a;background:#dbeafe}.notice-error{color:#9f1239;background:#ffe4e6}.validation-panel{border-color:#fecdd3}.validation-panel ul{color:#9f1239;gap:6px;margin:10px 0 0;padding-left:20px;font-size:.94rem;line-height:1.45;display:grid}.admin-empty-state{color:#64748b;text-align:center;place-items:center;min-height:360px;padding:32px;display:grid}.admin-empty-state h2{color:#334155;margin:12px 0 0;font-size:1.25rem}.editor-toolbar{align-items:flex-end;padding-bottom:4px}.editor-section{gap:16px;display:grid}.section-title-row,.task-add-controls{align-items:end}.admin-task-list{gap:12px;display:grid}.admin-task-item{background:#fbfdff;border:1px solid #dbe3ee;border-radius:8px;gap:14px;padding:16px;display:grid}.admin-task-header p{color:#64748b;margin:5px 0 0;font-size:.9rem;line-height:1.3}.empty-note{color:#64748b;margin:0;font-size:.94rem;line-height:1.45}@media (width<=700px){.topbar{min-height:64px;padding:0 18px}.nav-actions a{min-height:38px;padding:0 12px}.intro-section{grid-template-columns:1fr;align-items:start}h1{font-size:2.55rem}.getlink-page{width:min(100% - 28px,820px);padding:34px 0}.unlock-header h1{font-size:1.55rem}.unlock-header p{font-size:.98rem}.unlock-task-button,.target-unlock-button{grid-template-columns:44px minmax(0,1fr) 44px;min-height:58px;padding:0 8px}.task-button-title{font-size:.96rem}}@media (width<=980px){.admin-header{flex-direction:column;align-items:flex-start}.admin-grid{grid-template-columns:1fr}.admin-sidebar{position:static}.form-grid.two-columns{grid-template-columns:1fr}.editor-toolbar,.section-title-row,.admin-task-header{flex-direction:column;align-items:flex-start}}@media (width<=560px){.admin-page{width:min(100% - 28px,1360px);padding-top:22px}.admin-header h1{font-size:2.15rem}.admin-header-actions,.toolbar-actions,.task-add-controls,.admin-button{width:100%}}
