:root{color:#eadcc5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#071012;font-family:Cormorant Garamond,Georgia,Times New Roman,serif}*{box-sizing:border-box}html{background:#071012}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}#root{min-height:100vh}:root{--bg:#071012;--bg-2:#0b1517;--panel:#0e1719e0;--panel-2:#101c1ec7;--panel-deep:#050b0da8;--border:#d6a95d2e;--border-strong:#d6a95d4f;--teal:#3a8580;--teal-soft:#50b5ad47;--teal-bright:#74d0c7;--gold:#e9bd72;--gold-bright:#ffd77e;--cream:#eadcc5;--muted:#a99b84;--dim:#746a5e;--rust:#8d4b2b;--green:#83bc8b}.app-shell{min-height:100vh;color:var(--cream);background:radial-gradient(circle at 82% 4%, #a75b2421, transparent 24%), radial-gradient(circle at 14% 100%, #35807a24, transparent 34%), linear-gradient(135deg, #ffffff07 0 1px, transparent 1px 12px), var(--bg);position:relative;overflow-x:hidden}.app-shell:before{content:"";pointer-events:none;opacity:.24;mix-blend-mode:overlay;background-image:radial-gradient(circle,#ffffff2e 0 1px,#0000 1px),linear-gradient(90deg,#0000,#e8bd7308,#0000);background-size:4px 4px,100% 100%;position:fixed;inset:0}.app-header{border-bottom:1px solid var(--border);z-index:10;background:#040a0ceb;grid-template-columns:minmax(340px,430px) 1fr minmax(420px,530px);align-items:stretch;height:98px;display:grid;position:sticky;top:0;box-shadow:0 10px 40px #00000038}.brand-block,.header-right,.top-nav,.top-nav-item,.avatar-button,.brand-profile-photo{align-items:center;display:flex}.brand-block{gap:18px;padding-left:30px}.brand-profile-photo{width:58px;height:58px;color:var(--gold-bright);background:radial-gradient(circle at 30% 18%,#ffd77e33,#0000 38%),linear-gradient(145deg,#3a858094,#081e20f5 72%);border:1px solid #e9bd7294;border-radius:50%;flex:none;justify-content:center;overflow:hidden;box-shadow:0 0 22px #e9bd721f,inset 0 0 18px #00000073}.brand-profile-photo img{object-fit:cover;width:100%;height:100%}.brand-title{color:var(--cream);font-size:clamp(24px,2vw,31px);line-height:1}.brand-subtitle{text-transform:uppercase;letter-spacing:.18em;color:#c79247;margin-top:8px;font-size:12px}.top-nav{justify-content:center;height:98px}.top-nav-item{border:0;color:#8f8677;background:0 0;border-inline:1px solid #0000;justify-content:center;gap:11px;width:190px;height:98px;font-size:28px;transition:all .2s;position:relative}.top-nav-item.active{color:var(--cream);text-shadow:0 0 16px #ffd67e1f;background:#163133b8;border-inline-color:#d6a95d30}.top-nav-item.active:after{content:"";background:var(--gold);width:92px;height:2px;position:absolute;bottom:0;box-shadow:0 0 13px #ffca68cc}.header-right{justify-content:flex-end;gap:16px;padding-right:24px}.demo-badge{color:#efd5a7;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#8d4b2b38;border:1px solid #e9bd724d;border-radius:999px;padding:5px 10px;font-size:12px}.avatar-button{min-height:40px;color:var(--cream);background:#050c0e6b;border:1px solid #d6a95d2e;border-radius:999px;gap:8px;padding:0 13px;transition:all .18s}.avatar-button:hover{background:#182b2fd1;border-color:#e9bd726b;box-shadow:0 0 18px #e9bd721c}.avatar-button svg{color:var(--gold-bright)}.avatar-input{display:none}.avatar-copy{color:#d8cbb4;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:12px}.page-layout{gap:16px;max-width:1500px;margin:0 auto;padding:12px 18px 28px;display:grid}.skills-layout{grid-template-columns:230px minmax(500px,1fr) 380px}.log-layout{grid-template-columns:270px minmax(500px,1fr) 340px}.panel-slab,.center-slab,.skill-card,.log-card,.activity-panel{border:1px solid var(--border);background:var(--panel);box-shadow:inset 0 0 34px #00000057,0 18px 45px #00000026}.panel-slab,.center-slab{border-radius:6px}.center-slab{background:#0c1416ad;padding:24px}.breadcrumb{color:#d8c9ad;padding:28px 26px 23px;font-size:17px}.breadcrumb span{color:var(--gold);padding:0 7px}.category-list{border-top:1px solid #d6a95d14}.category-row{color:#b9ad98;text-align:left;background:0 0;border:0;border-bottom:1px solid #d6a95d14;align-items:center;gap:18px;width:100%;height:64px;padding:0 25px;font-size:19px;display:flex;position:relative}.category-row.active{background:var(--subject-glow,#3378745c);color:var(--cream);box-shadow:inset 0 0 28px var(--subject-glow,#3da0981a)}.category-row.active:before{content:"";background:var(--subject-accent,var(--gold));width:3px;box-shadow:0 0 14px var(--subject-glow,#eea545b8);position:absolute;top:0;bottom:0;left:0}.category-row.active svg{color:var(--subject-accent,var(--gold))}.skills-toolbar,.panel-heading,.log-hero,.form-actions,.card-bottom,.section-title-row{justify-content:space-between;align-items:center;display:flex}.sort-control,.ghost-btn{color:var(--muted);border:1px solid var(--border);background:#050c0e73;border-radius:6px;padding:8px 13px}.mobile-categories{display:none}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin-top:26px;display:grid}.skill-card{text-align:left;min-height:255px;color:var(--cream);background:linear-gradient(145deg, var(--subject-glow,#111b1d33), #111b1de0 48%);border-radius:10px;padding:27px 23px 18px;position:relative;overflow:hidden}.skill-card.selected{border-color:var(--subject-accent,var(--teal-bright));box-shadow:0 0 0 1px var(--subject-glow,#69c7be66), 0 0 30px var(--subject-glow,#44b4aa24), inset 0 0 34px #00000057}.card-motif{opacity:.22;color:var(--subject-accent,var(--teal-bright));position:absolute;top:16px;right:5px}.skill-subject-chip{border:1px solid var(--subject-glow,#d6a95d24);color:var(--subject-accent,var(--gold));letter-spacing:.08em;text-transform:uppercase;background:#040a0c57;border-radius:999px;align-items:center;gap:5px;margin-bottom:10px;padding:4px 9px;font-size:12px;display:inline-flex;position:relative}.skill-subject-chip.detail{margin-bottom:16px}.skill-card-title{margin-bottom:15px;padding-right:70px;font-size:26px;line-height:1.05;position:relative}.stars{color:var(--dim);gap:3px;display:flex}.star{line-height:1}.stars-md .star{font-size:29px}.stars-lg .star{letter-spacing:3px;font-size:38px}.stars-sm .star{font-size:20px}.star.filled,.milestone-grid .lit,.mini-star-scale .lit{color:var(--gold-bright);text-shadow:0 0 8px #ffbe55e6,0 0 18px #ff9a3259}.star.empty{color:#a99f8b47}.card-divider{background:#d6a95d24;height:1px;margin:22px 0 15px}.metric-grid{grid-template-columns:repeat(3,1fr);display:grid}.metric-grid div{text-align:center;padding:0 8px}.metric-grid div+div{border-left:1px solid #d6a95d29}.metric-grid span{color:var(--muted);font-size:13px;line-height:1.15;display:block}.metric-grid strong{color:var(--cream);margin-top:6px;font-size:29px;font-weight:400;display:block}.card-bottom{color:#c7b79d;margin-top:18px}.status-chip{letter-spacing:.08em;border-radius:999px;padding:6px 13px;font-size:12px}.status-chip.learning{background:#3d84808c}.status-chip.new{background:#7d776c66}.status-chip.lit{background:#8e4626b8}.log-card h2,.activity-panel h2,.updates-panel h2,.rules-card h2{color:var(--cream);margin:0;font-weight:400}.notes-box{color:#cfc0a8;background:#050a0c47;border:1px solid #d6a95d33;border-radius:6px;min-height:100px;padding:15px;line-height:1.35;position:relative}.notes-box svg{color:var(--gold);position:absolute;bottom:12px;right:12px}.primary-btn,.secondary-btn,.icon-btn{color:#f3ead6;border:1px solid #74d3cb6b;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:43px;display:inline-flex}.primary-btn{background:linear-gradient(#4b9791e0,#2a6865e0);box-shadow:inset 0 1px #ffffff14}.secondary-btn,.icon-btn{background:#1c2d30c2;border-color:#d6a95d2e}.mini-star-scale{text-align:center;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:20px;display:grid}.mini-star-scale span{color:#a99f8b59;font-size:30px;display:block}.mini-star-scale small{color:#d4c6ad;font-size:13px;line-height:1.1;display:block}.section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.13em;margin:22px 0 12px;font-size:12px}.log-sidebar,.updates-panel{padding:20px}.focus-card,.update-skill-card,.rules-card,.nice-work{border:1px solid var(--border);background:#0c181ab8;border-radius:6px;padding:18px}.focus-card{min-height:118px;color:var(--cream);justify-content:space-between;align-items:center;display:flex}.focus-card strong,.update-skill-card strong{margin-bottom:8px;font-size:21px;font-weight:400;display:block}.goal-list div{color:#cfc0a8;border-bottom:1px solid #d6a95d17;align-items:center;gap:10px;height:42px;display:flex}.goal-list div svg:last-child{color:var(--gold);margin-left:auto}.category-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.category-pill{border:1px solid var(--border);color:#c1b49e;background:#050c0e61;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:36px;font-size:15px;display:flex}.category-pill svg{color:var(--subject-accent,var(--gold))}.category-pill.active{background:linear-gradient(180deg, var(--subject-glow,#347f7ab3), #27625fc7);color:var(--cream);border-color:var(--subject-accent,#74d3cb6b)}.log-hero{gap:20px;margin-bottom:18px}.log-hero h1{color:var(--gold);margin:0;font-size:27px;font-weight:400}.log-hero p{color:var(--muted);margin-top:5px}.tip-box{border:1px solid var(--border);color:#cdbf9f;background:#050c0e5c;border-radius:6px;align-items:center;gap:11px;width:250px;min-height:58px;padding:10px 14px;display:flex}.log-form-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.12fr);gap:14px;display:grid}.log-card{background:#0e1a1cd1;border-radius:7px;padding:18px}.log-card-header{align-items:center;gap:12px;margin-bottom:18px;display:flex}.log-card-header p{color:var(--muted);margin:3px 0 0}.step-badge{color:#8ad3ca;background:#266b656b;border-radius:50%;place-items:center;width:37px;height:37px;display:grid}.log-card label{color:var(--muted);grid-template-columns:112px 1fr;align-items:center;gap:10px;margin-bottom:12px;font-size:15px;display:grid}.log-card label.stacked{grid-template-columns:1fr;gap:7px}.log-card input,.log-card select,.log-card textarea,.chip-box{color:#e6d4b8;background:#030a0ca3;border:1px solid #b4beb438;border-radius:5px;width:100%;min-height:35px;padding:7px 10px;box-shadow:inset 0 1px 4px #00000059}.log-card label span{display:block;position:relative}.log-card label span svg{color:var(--muted);position:absolute;top:10px;right:9px}.log-card textarea{resize:vertical;min-height:96px}.log-card small{color:var(--dim);z-index:1;justify-self:end;margin-top:-24px;padding-right:8px}.chip-box{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip-box select{min-width:120px;box-shadow:none;background:0 0;border:0;flex:120px;padding:2px}.choice-chip{color:#d9ccb5;background:#ffffff0b;border:1px solid #d6a95d24;border-radius:999px;padding:4px 8px;font-size:13px}.form-actions{gap:8px;margin-top:14px}.form-actions .primary-btn{flex:1}.icon-btn{width:43px}.activity-panel{background:#0a1416bf;border-radius:6px;margin-top:16px;padding:16px}.panel-heading h2{font-size:24px}.timeline{margin-top:12px}.activity-row{color:#d8c9ad;border-top:1px solid #d6a95d14;grid-template-columns:82px 24px 42px 1fr 82px 90px;align-items:center;gap:9px;min-height:56px;display:grid}.activity-row time{color:var(--dim);font-size:13px}.timeline-dot{background:var(--teal-bright);border-radius:50%;width:10px;height:10px;box-shadow:0 0 10px #74d0c780}.activity-icon{border:1px solid var(--border);width:34px;height:34px;color:var(--gold);border-radius:50%;place-items:center;display:grid}.activity-row strong{font-weight:400}.activity-badge{text-align:center;letter-spacing:.08em;border-radius:999px;padding:5px 9px;font-size:11px}.activity-badge.drill{color:#c7e9df;background:#163b35}.activity-badge.rolling{color:#d3edf4;background:#183542}.activity-badge.success{color:#d5f3d5;background:#193c2f}.activity-badge.goal{color:#ffd7bd;background:#73351f}.activity-row em,.stats-strip em{color:var(--green);font-size:13px;font-style:normal}.footer-mantra{text-align:center;color:#d6be968c;margin-top:22px;font-size:19px}.updated-pill{color:#8ee0cf;letter-spacing:.1em;background:#2d786e33;border:1px solid #74d3cb47;border-radius:999px;padding:5px 10px;font-size:11px}.update-skill-card{min-height:114px;margin-top:16px}.update-skill-card small{color:var(--muted)}.stats-strip{border:1px solid var(--border);border-radius:6px;grid-template-columns:repeat(3,1fr);margin-top:14px;display:grid;overflow:hidden}.stats-strip div{text-align:center;background:#050c0e47;padding:12px 8px}.stats-strip div+div{border-left:1px solid #d6a95d29}.stats-strip span{color:var(--muted);font-size:12px;line-height:1.1;display:block}.stats-strip strong{color:var(--cream);font-size:29px;font-weight:400;display:block}.nice-work,.rules-card{margin-top:14px}.nice-work strong{color:var(--gold);font-size:21px;font-weight:400}.nice-work p,.rules-card p{color:#c8baa2;margin:8px 0 0;line-height:1.35}.rules-card h2{font-size:22px}.mini-star-scale{gap:5px}.mini-star-scale span{font-size:21px}.mini-star-scale small{font-size:11px}.progress-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;max-width:1480px}.progress-center{min-width:0}.progress-sidebar{padding:18px;position:sticky;top:116px}.progress-hero{border-bottom:1px solid #d6a95d1a;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:18px;padding-bottom:20px;display:flex}.progress-hero h1{color:var(--gold);margin:0;font-size:clamp(36px,4vw,56px);font-weight:400;line-height:.95}.progress-hero p{color:var(--muted);max-width:660px;margin:8px 0 0;font-size:17px;line-height:1.4}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--teal-bright)!important;margin:0 0 7px!important;font-size:12px!important}.progress-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.progress-actions .primary-btn,.progress-actions .secondary-btn{white-space:nowrap;padding-inline:15px}.summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:12px 0 22px;display:grid}.summary-card{border:1px solid var(--border);background:linear-gradient(145deg,#122123d1,#070d0fc2);border-radius:9px;min-height:126px;padding:16px;position:relative;overflow:hidden}.summary-card:after{content:"";background:#74d0c714;border-radius:50%;width:90px;height:90px;position:absolute;top:-24px;right:-24px}.summary-card svg{color:var(--gold);z-index:1;position:relative}.summary-card span{color:var(--muted);margin-top:12px;font-size:13px;display:block}.summary-card strong{color:var(--cream);margin-top:5px;font-size:35px;font-weight:400;line-height:1;display:block}.summary-card small{color:#8f846f;font-size:12px}.progress-section{margin-top:22px}.section-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.section-heading h2,.growth-panel h2{color:var(--cream);margin:0;font-size:25px;font-weight:400}.section-heading p{color:var(--muted);margin:4px 0 0}.subject-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.subject-card{border:1px solid var(--border);background:linear-gradient(145deg, var(--subject-glow,#152628b3), #080f11d1 50%);border-radius:9px;min-height:190px;padding:16px;position:relative;overflow:hidden}.subject-motif{opacity:.16;color:var(--subject-accent,var(--teal-bright));position:absolute;top:10px;right:8px}.subject-title{color:var(--subject-accent,var(--gold));align-items:center;gap:8px;display:flex}.subject-title h3{color:var(--cream);margin:0;font-size:22px;font-weight:400}.subject-count{margin:18px 0 13px}.subject-count strong{color:var(--cream);margin-right:7px;font-size:34px;font-weight:400;display:inline-block}.subject-count span,.subject-stat-row{color:var(--muted)}.subject-stat-row{justify-content:space-between;gap:12px;margin-top:7px;font-size:13px;display:flex}.progress-bar{background:#04090bad;border:1px solid #d6a95d21;border-radius:999px;height:7px;margin-top:13px;overflow:hidden}.progress-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--subject-accent,var(--teal-bright)), var(--gold));height:100%;box-shadow:0 0 14px var(--subject-glow,#74d0c747);display:block}.motion-table-wrap{border:1px solid var(--border);background:#070e109e;border-radius:9px;overflow-x:auto}.motion-table{border-collapse:collapse;width:100%;min-width:900px}.motion-table th{text-align:left;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #d6a95d21;padding:13px 12px;font-size:12px;font-weight:400}.motion-table td{color:#d7cab3;vertical-align:middle;border-bottom:1px solid #d6a95d12;padding:13px 12px}.motion-table tr:last-child td{border-bottom:0}.motion-table td strong{color:var(--cream);font-weight:400}.motion-table .stars-sm .star{font-size:17px}.subject-pill{background:var(--subject-glow,#74d0c71a);color:var(--subject-accent,var(--gold));white-space:nowrap;border:1px solid #d6a95d1a;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;display:inline-flex}.progress-sidebar .growth-panel+.growth-panel{margin-top:14px}.growth-panel{border:1px solid var(--border);background:#08101299;border-radius:9px;padding:16px}.growth-panel h2{margin-bottom:14px;font-size:22px}.week-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.week-grid div{background:#03090b52;border:1px solid #d6a95d1a;border-radius:7px;min-height:72px;padding:11px}.week-grid strong{color:var(--cream);font-size:28px;font-weight:400;display:block}.week-grid span,.bridge-row span{color:var(--muted);font-size:12px}.bridge-row+.bridge-row{margin-top:13px}.bridge-row div:first-child{justify-content:space-between;align-items:center;display:flex}.bridge-row strong{color:var(--cream);font-weight:400}.week-chart{grid-template-columns:repeat(4,1fr);align-items:end;gap:12px;height:130px;padding-top:8px;display:grid}.week-bar{text-align:center;height:100%;color:var(--muted);grid-template-rows:1fr auto;gap:7px;display:grid}.bar-pair{justify-content:center;align-items:end;gap:4px;height:100%;display:flex}.bar-pair span,.bar-pair em{border-radius:999px 999px 2px 2px;width:13px;min-height:8px;display:block}.bar-pair span{background:linear-gradient(180deg, var(--teal-bright), #2f6e68)}.bar-pair em{background:linear-gradient(180deg, var(--gold-bright), var(--rust))}.chart-legend{color:var(--muted);justify-content:center;gap:13px;margin-top:10px;font-size:12px;display:flex}.chart-legend span:before{content:"";background:var(--teal-bright);border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.chart-legend span:last-child:before{background:var(--gold)}.log-drawer-backdrop{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;justify-content:flex-end;display:flex;position:fixed;inset:0}.log-drawer{border-left:1px solid var(--border-strong);background:#081214;width:min(520px,100vw - 24px);height:100%;padding:58px 18px 18px;position:relative;overflow-y:auto;box-shadow:-22px 0 60px #0006}.drawer-close{border:1px solid var(--border);width:34px;height:34px;color:var(--cream);background:#ffffff0a;border-radius:50%;place-items:center;display:grid;position:absolute;top:17px;right:17px}.log-drawer .log-card{box-shadow:none}.app-header{grid-template-columns:minmax(320px,430px) 1fr minmax(150px,230px)}.compact-skills-layout{grid-template-columns:220px minmax(0,1fr);max-width:1320px}.compact-skills-center{min-width:0}.compact-skills-center .skills-toolbar{border-bottom:1px solid #d6a95d1a;align-items:flex-end;padding-bottom:14px}.compact-skills-center h1{color:var(--gold);margin:0;font-size:clamp(34px,4vw,50px);font-weight:400;line-height:1}.game-skill-grid{grid-template-columns:repeat(auto-fit,minmax(218px,1fr));gap:12px;margin-top:0}.game-card.skill-card{background:linear-gradient(145deg, var(--subject-glow,#111b1d33), #0b1416e6 52%);border-radius:9px;flex-direction:column;justify-content:space-between;min-height:176px;padding:0;display:flex}.skill-card-main{width:100%;min-height:128px;color:inherit;text-align:left;background:0 0;border:0;padding:13px 13px 7px;position:relative;overflow:hidden}.game-card.selected{border-color:var(--subject-accent,var(--teal-bright));box-shadow:0 0 0 1px var(--subject-glow,#69c7be66), 0 0 22px var(--subject-glow,#44b4aa24), inset 0 0 26px #00000057}.game-card .card-motif{opacity:.16;top:4px;right:-4px}.skill-card-topline{justify-content:space-between;align-items:center;gap:8px;display:flex;position:relative}.game-card .skill-subject-chip{letter-spacing:.07em;margin:0;padding:3px 7px;font-size:10px}.delete-card-btn{z-index:2;color:#eadcc58a;opacity:.72;background:#0207098c;border:1px solid #d6a95d29;border-radius:50%;place-items:center;width:25px;height:25px;display:grid;position:absolute;top:9px;right:9px}.delete-card-btn:hover{color:#ffd1bd;background:#69231973;border-color:#be55368c}.game-card .skill-card-title{align-items:flex-start;gap:9px;min-height:42px;margin:10px 0 8px;padding-right:36px;font-size:20px;line-height:1.05;display:flex}.technique-roman-rank{color:#1b1310;min-width:34px;min-height:30px;font-family:var(--font-serif);letter-spacing:.05em;background:linear-gradient(145deg, var(--gold-bright), var(--subject-accent,var(--teal-bright)) 62%, #b76e35);clip-path:polygon(14% 0,86% 0,100% 50%,86% 100%,14% 100%,0 50%);box-shadow:0 0 14px var(--subject-glow,#e9bd723d);text-shadow:0 1px #ffffff38;border:1px solid #ffebb7b8;flex:none;place-items:center;padding:3px 7px;font-size:18px;line-height:1;display:inline-grid}.level-stack{gap:7px;display:grid;position:relative}.level-row{gap:4px;display:grid}.level-label{color:#d8cbb4;letter-spacing:.03em;justify-content:space-between;font-size:11px;display:flex}.level-label em{color:var(--muted);font-style:normal}.level-track{background:#020709b8;border:1px solid #d6a95d24;border-radius:999px;height:8px;overflow:hidden}.level-track span{border-radius:inherit;background:linear-gradient(90deg, var(--subject-accent,var(--teal-bright)), var(--gold));height:100%;box-shadow:0 0 12px var(--subject-glow,#74d0c738);display:block}.quick-log-actions{background:#d6a95d14;border-top:1px solid #d6a95d1a;grid-template-columns:1fr 1fr;gap:1px;display:grid}.mini-log-btn{color:#dcd0ba;background:#050d0fbd;border:0;justify-content:center;align-items:center;gap:5px;min-height:34px;font-size:12px;display:flex}.mini-log-btn:hover{color:var(--cream);background:var(--subject-glow,#2a686580)}.mini-log-btn.roll{color:var(--subject-accent,var(--gold))}.compact-log-drawer{width:min(460px,100vw - 20px)}.skill-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.quest-grid{grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:13px;margin-top:16px;display:grid}.quest-card{border:1px solid var(--border);min-height:212px;color:var(--cream);text-align:left;background:linear-gradient(145deg,#0b1416eb,#050c0ef5);border-radius:12px;align-content:space-between;gap:16px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 26px #00000047,0 18px 35px #0000001f}.quest-card:hover{border-color:var(--subject-accent,var(--teal-bright));box-shadow:0 0 24px var(--subject-glow,#44b4aa24), inset 0 0 26px #0000004d}.quest-motif{opacity:.11;color:var(--subject-accent,var(--gold));position:absolute;top:8px;right:-6px}.quest-title{color:var(--subject-accent,var(--gold));align-items:flex-start;gap:9px;max-width:calc(100% - 40px);display:flex;position:relative}.quest-title h2{color:var(--cream);margin:0;font-size:24px;font-weight:400;line-height:1.05}.quest-stats.vertical{color:#d8cbb4;grid-template-columns:1fr;gap:7px;font-size:12px;display:grid;position:relative}.quest-stats.vertical span{text-align:left;background:#03090b57;border:1px solid #d6a95d1a;border-radius:8px;grid-template-columns:52px 1fr;align-items:baseline;padding:7px 9px;display:grid}.quest-stats.vertical strong{color:var(--subject-accent,var(--gold));font-size:20px;font-weight:600;line-height:1}.quest-stats.vertical em{color:#d8cbb4;white-space:nowrap;font-style:normal}.quest-enter{opacity:.52;color:#d8cbb4;letter-spacing:.04em;align-items:center;gap:6px;margin-top:2px;font-size:13px;transition:opacity .18s,color .18s,transform .18s;display:inline-flex}.quest-card:hover .quest-enter{opacity:1;color:var(--subject-accent,var(--gold));transform:translate(2px)}.danger-ghost-btn{color:#f1c2ad;background:#3e161138;border:1px solid #be55363d;border-radius:6px;align-items:center;gap:7px;min-height:38px;padding:0 12px;display:inline-flex}.danger-ghost-btn:hover{color:#ffe0cf;background:#5e231961;border-color:#e0714c8c}.technique-workspace{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:16px;margin-top:16px;display:grid}.technique-detail-card{border:1px solid var(--border);background:linear-gradient(145deg,#0c1719f0,#050b0dfa);border-radius:12px;padding:18px;position:sticky;top:18px;overflow:hidden;box-shadow:inset 0 0 28px #00000057,0 16px 30px #00000021}.detail-watermark{color:var(--subject-accent,var(--gold));opacity:.1;position:absolute;top:18px;right:-18px}.technique-detail-card h2{color:var(--cream);margin:0 0 14px;font-size:29px;font-weight:400;line-height:1.02;position:relative}.detail-quest-line{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:-7px 0 13px;font-size:12px;position:relative}.detail-quest-line strong{color:var(--subject-accent,var(--gold));text-transform:none;letter-spacing:.02em;font-weight:400}.detail-stat-lines{gap:7px;margin-bottom:14px;display:grid;position:relative}.detail-stat-lines span{color:#d8cbb4;border-bottom:1px solid #d6a95d1a;justify-content:space-between;gap:12px;padding-bottom:6px;display:flex}.detail-stat-lines strong{color:var(--subject-accent,var(--gold))}.detail-card-topline{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex;position:relative}.edit-technique-btn{color:#d8cbb4;letter-spacing:.04em;background:#03090b59;border:1px solid #d6a95d2e;border-radius:999px;padding:6px 11px;font-size:12px}.edit-technique-btn:hover{color:var(--gold);background:#d6a95d14;border-color:#d6a95d6b}.technique-description-text{background:#03090b40;border:1px solid #d6a95d1f;border-radius:10px;margin:12px 0 14px;padding:12px 13px;position:relative}.technique-description-text span{color:var(--subject-accent,var(--gold));text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px;font-size:10px;display:block}.technique-description-text p{color:#e4d8c3;margin:0;font-size:14px;line-height:1.48}.technique-edit-panel{gap:10px;display:grid;position:relative}.technique-edit-panel input,.technique-edit-panel textarea{background:#03090b75;border-color:#d6a95d2e}.technique-edit-panel textarea{resize:vertical;min-height:112px}.edit-actions{margin-top:2px}.detail-actions-row{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.number-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.focused-log-card input[type=number]{appearance:textfield;text-align:center;color:var(--gold);font-size:22px}.focused-log-card input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.focused-log-card input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.add-skill-btn{white-space:nowrap;padding-inline:15px}.add-skill-card{color:#d8cbb4;text-align:center;background:#060e1073;border:1px dashed #e9bd7259;border-radius:9px;align-content:center;place-items:center;gap:8px;min-height:176px;padding:18px;display:grid}.add-skill-card svg{color:var(--gold);filter:drop-shadow(0 0 10px #e9bd7240)}.add-skill-card strong{color:var(--cream);font-size:20px;font-weight:400}.add-skill-card span{color:var(--muted);font-size:13px}.add-skill-form .primary-btn:disabled{opacity:.45;cursor:not-allowed}.step-badge.danger{color:#ffc5ab;background:#6e2a1e73}.delete-skill-confirm strong{color:var(--cream);margin:10px 0;font-size:24px;font-weight:400;display:block}.delete-warning{color:#cdbfa7;line-height:1.4}.danger-btn{color:#ffe2d2;background:linear-gradient(#863d2ceb,#54231beb);border:1px solid #d35d3f73;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding-inline:16px;display:inline-flex}@media (width<=1050px){.app-header{grid-template-columns:minmax(300px,430px) 1fr minmax(110px,180px)}.skills-layout,.log-layout,.progress-layout{grid-template-columns:1fr;max-width:900px}.skills-sidebar{display:none}.mobile-categories{margin-top:16px;display:block}.log-sidebar,.updates-panel,.progress-sidebar{min-height:auto;position:static}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.technique-workspace{grid-template-columns:1fr}.technique-detail-card{position:static}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.app-header{grid-template-columns:1fr;gap:10px;height:auto;padding:12px}.brand-block{padding-left:0}.top-nav{height:62px}.top-nav-item{flex:1;height:62px;font-size:22px}.header-right{justify-content:space-between;padding-right:0}.page-layout{padding:10px}.skill-grid,.log-form-grid,.summary-grid,.subject-grid{grid-template-columns:1fr}.log-hero,.progress-hero{flex-direction:column;align-items:stretch}.progress-actions{justify-content:stretch}.progress-actions .primary-btn,.progress-actions .secondary-btn{flex:1}.tip-box{width:100%}.activity-row{grid-template-columns:1fr;gap:6px;padding:12px 0}.timeline-dot{display:none}.category-chip-grid{grid-template-columns:1fr 1fr}.detail-actions{grid-template-columns:1fr}.wide{grid-column:auto}.milestone-grid,.mini-star-scale{grid-template-columns:1fr}}.mastery-crystals{gap:5px;margin:8px 0 9px;display:grid;position:relative}.crystal-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.crystal-row span{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:#04090bb8;border:1px solid #d6a95d4d;width:11px;height:11px;transform:none;box-shadow:inset 0 0 8px #0006}.crystal-row span.lit{background:linear-gradient(180deg, var(--subject-accent,var(--teal-bright)), var(--gold));box-shadow:0 0 10px var(--subject-glow,#74d0c738), 0 0 4px #ffda8657;border-color:#f4d397c2}.mastery-crystals em{color:#bcae93;letter-spacing:.035em;font-size:11px;font-style:normal}.level-stack.compact{gap:5px;margin-top:7px}.level-stack.compact .level-track{height:5px}.level-stack.compact .level-label{font-size:10px}.technique-detail-card .mastery-crystals{margin:-4px 0 13px}.technique-detail-card .crystal-row span{width:12px;height:12px}.rewarding-progress-layout{grid-template-columns:minmax(0,1fr) 340px;max-width:1400px}.reward-hero{align-items:center}.reward-board{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;margin:14px 0 24px;display:grid}.weekly-plan-card,.reward-summary-card,.focus-technique-card,.world-card{border:1px solid var(--border);background:linear-gradient(145deg,#122123c7,#060d0fe6);border-radius:12px;box-shadow:inset 0 0 28px #0000003d}.weekly-plan-card,.reward-summary-card{padding:18px}.reward-card-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.reward-card-heading span{color:var(--cream);font-size:21px;font-family:var(--font-serif);align-items:center;gap:8px;display:inline-flex}.reward-card-heading svg{color:var(--gold)}.reward-card-heading strong{color:var(--gold);font-size:26px;font-weight:400}.plan-list{gap:10px;display:grid}.plan-item{background:#03090b47;border:1px solid #d6a95d1a;border-radius:9px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;display:grid}.plan-item svg{color:#d6a95d5c}.plan-item.done{background:#367c7621;border-color:#74d0c757}.plan-item.done svg{color:var(--teal-bright);filter:drop-shadow(0 0 8px #74d0c759)}.plan-item strong{color:var(--cream);font-weight:400;display:block}.plan-item span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.plan-item em{color:var(--gold);background:#d6a95d0f;border:1px solid #d6a95d2e;border-radius:999px;padding:5px 8px;font-size:13px;font-style:normal}.reward-number{color:var(--gold);font-family:var(--font-serif);font-size:64px;line-height:.9}.reward-summary-card p{color:var(--muted);margin:7px 0 18px}.top-technique{border-top:1px solid #d6a95d1a;padding-top:13px}.top-technique span{color:var(--muted);text-transform:uppercase;letter-spacing:.11em;font-size:12px;display:block}.top-technique strong{color:var(--cream);margin-top:4px;font-weight:400;display:block}.focus-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.focus-technique-card{padding:15px;position:relative;overflow:hidden}.focus-technique-card h3{color:var(--cream);margin:13px 0 6px;font-size:21px;font-weight:400;line-height:1.05}.focus-technique-card>span{color:var(--muted);font-size:12px}.focus-next-action{color:#ead8b7;border-top:1px solid #d6a95d1a;align-items:center;gap:7px;margin-top:12px;padding-top:10px;font-size:13px;display:flex}.focus-next-action svg{color:var(--subject-accent,var(--gold))}.world-map-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.world-card{min-height:142px;padding:13px;position:relative;overflow:hidden}.world-card svg{color:var(--subject-accent,var(--gold))}.world-card h3{color:var(--cream);margin:9px 0 12px;font-size:18px;font-weight:400}.world-card div{color:var(--muted);border-top:1px solid #d6a95d14;justify-content:space-between;margin-top:7px;padding-top:7px;font-size:12px;display:flex}.world-card strong{color:var(--subject-accent,var(--gold));font-weight:400}.reward-sidebar{align-content:start;gap:14px;display:grid}.streak-panel p{color:var(--muted);margin-top:-4px;line-height:1.45}.nudge-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px;display:grid}.nudge-stats div{text-align:center;background:#03090b40;border:1px solid #d6a95d1f;border-radius:9px;padding:10px 8px}.nudge-stats svg{color:var(--gold)}.nudge-stats strong{color:var(--cream);font-size:24px;font-weight:400;display:block}.nudge-stats span{color:var(--muted);font-size:11px}.mini-activity-list{gap:10px;display:grid}.mini-activity-list div{border-bottom:1px solid #d6a95d14;padding-bottom:9px}.mini-activity-list div:last-child{border-bottom:0;padding-bottom:0}.mini-activity-list strong{color:var(--cream);font-weight:400;line-height:1.25;display:block}.mini-activity-list span{color:var(--gold);font-size:12px}.training-planner-page{grid-template-columns:1fr;max-width:1420px}.training-planner-shell{gap:30px;display:grid}.planner-first-section{margin-top:0}.planner-first-section .section-heading h1{color:var(--cream);font-weight:400;font-family:var(--font-serif);margin:0;font-size:clamp(34px,4vw,54px)}.planner-compact-heading{align-items:center}.empty-board-card{min-height:180px;color:var(--muted);text-align:center;background:#03090b47;border:1px dashed #d6a95d38;border-radius:12px;align-content:center;place-items:center;gap:8px;display:grid}.empty-board-card svg{color:var(--gold)}.empty-board-card strong{color:var(--cream);font-weight:400}.roll-goal-add-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:12px;display:grid}.roll-goal-add-row input{color:#eadcc5;background:#03090b8c;border:1px solid #d6a95d29;border-radius:9px;min-height:42px;padding:9px 12px;box-shadow:inset 0 1px 5px #00000040}.roll-goal-add-row .primary-btn:disabled{opacity:.45;cursor:not-allowed}.roll-goal-board-card{border:1px solid var(--border);background:linear-gradient(145deg,#122123c7,#060d0feb);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;display:grid;box-shadow:inset 0 0 28px #0000003d}.roll-goal-board-item{color:#d8cbb4;background:#03090b5c;border:1px solid #d6a95d1f;border-radius:10px;grid-template-columns:28px minmax(0,1fr) 26px;align-items:center;gap:10px;min-height:62px;padding:10px;display:grid}.roll-goal-board-item.done{background:#367c7621;border-color:#74d0c747}.roll-goal-board-item button{color:var(--gold);background:0 0;border:0;place-items:center;padding:0;display:grid}.roll-goal-board-item button:last-child{color:#eadcc58c;background:#0207095c;border:1px solid #d6a95d1a;border-radius:50%;width:24px;height:24px}.roll-goal-board-item button:last-child:hover{color:#ffd1bd;background:#69231959;border-color:#be55368c}.roll-goal-board-item span{color:var(--cream);line-height:1.28}.roll-goal-board-item.done span{color:#7f8f87;-webkit-text-decoration:line-through #74d0c78c;text-decoration:line-through #74d0c78c}.roll-cue-card>svg{color:var(--gold);margin-top:4px}.roll-cue-card div{min-width:0}.roll-cue-card strong{color:var(--cream);font-size:17px;font-weight:400;line-height:1.2;display:block}.plan-progress-layout{grid-template-columns:minmax(0,1fr) 330px;max-width:1460px}.planning-hero h1{font-size:clamp(37px,4vw,58px)}.planner-overview-grid{grid-template-columns:minmax(240px,1.25fr) repeat(3,minmax(150px,.75fr));gap:12px;margin:14px 0 24px;display:grid}.planner-score-card,.planner-metric-card,.planner-form-card,.roll-goal-list-card,.focus-toolbar-card{border:1px solid var(--border);background:linear-gradient(145deg,#122123c7,#060d0feb);border-radius:12px;box-shadow:inset 0 0 28px #0000003d}.planner-score-card{grid-template-columns:minmax(0,1fr) 122px;align-items:center;gap:14px;padding:17px;display:grid}.planner-score-card .reward-card-heading{grid-column:1;align-self:end;margin:0}.planner-score-card p{color:var(--muted);grid-column:1;margin:-8px 0 0;line-height:1.35}.planner-score-ring{grid-area:1/2/span 2;place-items:center;display:grid}.planner-score-ring span{--score:0%;background:conic-gradient(var(--subject-accent,var(--teal-bright)) var(--score), #d6a95d1c 0);border-radius:50%;place-items:center;width:108px;height:108px;display:grid;position:relative;box-shadow:0 0 18px #74d0c71f}.planner-score-ring span:after{content:"";border-radius:inherit;background:#091315;border:1px solid #d6a95d1f;position:absolute;inset:9px}.planner-score-ring strong,.planner-score-ring em{z-index:1;text-align:center;position:relative}.planner-score-ring strong{color:var(--cream);font-size:27px;line-height:.9}.planner-score-ring em{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:-38px;font-size:11px;font-style:normal}.planner-metric-card{min-height:148px;padding:16px}.planner-metric-card svg{color:var(--gold)}.planner-metric-card span{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin-top:14px;font-size:12px;display:block}.planner-metric-card strong{color:var(--cream);margin-top:6px;font-size:38px;font-weight:400;line-height:1;display:block}.planner-metric-card small{color:#8f846f}.planning-board-grid,.roll-goal-grid{grid-template-columns:minmax(0,1fr) minmax(270px,330px);align-items:start;gap:14px;display:grid}.plan-list-card{min-height:100%}.interactive-plan-list .plan-item{width:100%;color:inherit;text-align:left;cursor:pointer;transition:transform .16s,border-color .16s,background .16s}.interactive-plan-list .plan-item:hover{border-color:#74d0c747;transform:translate(2px)}.interactive-plan-list .plan-item.done strong,.roll-goal-item.done strong{color:#b9c8bd;-webkit-text-decoration:line-through #74d0c78c;text-decoration:line-through #74d0c78c}.interactive-plan-list .plan-item.done span,.roll-goal-item.done span{color:#7f8f87}.planner-form-card{gap:11px;padding:16px;display:grid}.planner-form-card .reward-card-heading{margin-bottom:2px}.planner-form-card label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:6px;font-size:12px;display:grid}.planner-form-card label.stacked{margin-top:2px}.planner-form-card input,.planner-form-card select,.planner-form-card textarea,.focus-toolbar-card select{color:#eadcc5;background:#03090b8c;border:1px solid #d6a95d29;border-radius:7px;width:100%;min-height:38px;padding:8px 10px;box-shadow:inset 0 1px 5px #00000040}.planner-form-card textarea{resize:vertical;min-height:104px;line-height:1.4}.planner-form-card .primary-btn:disabled,.focus-toolbar-card .secondary-btn:disabled{opacity:.45;cursor:not-allowed}.focus-toolbar-card{grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;padding:12px;display:grid}.focus-toolbar-card>span{color:var(--gold);white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.pinned-focus-card{min-height:212px;padding-right:42px}.unpin-focus-btn{color:#eadcc59e;background:#0207098c;border:1px solid #d6a95d29;border-radius:50%;place-items:center;width:27px;height:27px;display:grid;position:absolute;top:11px;right:11px}.unpin-focus-btn:hover{color:#ffd1bd;background:#69231973;border-color:#be55368c}.roll-goal-list-card{gap:10px;padding:12px;display:grid}.roll-goal-item{background:linear-gradient(145deg, var(--subject-glow,#03090b52), #03090b8c);color:#d8cbb4;text-align:left;border:1px solid #d6a95d1f;border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;width:100%;padding:12px;display:grid;position:relative}.roll-goal-item svg{color:var(--subject-accent,var(--gold));margin-top:2px}.roll-goal-item strong{color:var(--cream);font-size:17px;font-weight:400;display:block}.roll-goal-item span{color:#d8cbb4;margin-top:3px;line-height:1.35;display:block}.roll-goal-item em{color:var(--subject-accent,var(--gold));background:#03090b3d;border:1px solid #d6a95d1f;border-radius:999px;margin-top:7px;padding:3px 7px;font-size:12px;font-style:normal;display:inline-block}.planner-sidebar .growth-panel h2{margin-bottom:10px}.planning-note-panel p{color:var(--muted);margin-top:-2px;line-height:1.45}.top-technique-panel .top-technique{border-top:0;padding-top:0}.planner-calendar-heading{align-items:center}.calendar-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.calendar-view-toggle{background:#03090b61;border:1px solid #d6a95d29;border-radius:999px;padding:3px;display:inline-flex}.calendar-view-toggle button{min-height:34px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;border-radius:999px;padding:0 13px;font-size:12px}.calendar-view-toggle button.active{color:#0c1515;background:linear-gradient(180deg, var(--gold-bright), var(--gold));box-shadow:0 0 14px #e9bd7229}.calendar-card{border:1px solid var(--border);background:linear-gradient(145deg,#122123c7,#060d0feb);border-radius:12px;padding:14px;box-shadow:inset 0 0 28px #0000003d}.calendar-card-topline{color:var(--cream);justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.calendar-card-topline span{font-size:20px;font-family:var(--font-serif);align-items:center;gap:8px;display:inline-flex}.calendar-card-topline svg{color:var(--gold)}.calendar-card-topline strong{color:var(--gold);font-size:14px;font-weight:400}.training-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-day-cell{background:#03090b47;border:1px solid #d6a95d1f;border-radius:10px;flex-direction:column;gap:9px;min-height:206px;padding:9px;display:flex}.calendar-card.month .calendar-day-cell{min-height:148px;padding:7px}.calendar-card.month .calendar-plan-pill{grid-template-columns:18px minmax(0,1fr);gap:5px;padding:7px}.calendar-card.month .calendar-plan-pill span{font-size:12px}.calendar-card.month .calendar-plan-pill em{display:none}.calendar-card.month .calendar-plan-actions{grid-column:1/-1;justify-content:flex-end;gap:5px;margin-top:-2px;display:flex}.calendar-card.month .calendar-plan-actions button{width:20px;height:20px}.calendar-card.week .calendar-plan-pill{grid-template-columns:20px minmax(0,1fr)}.calendar-card.week .calendar-plan-actions{grid-column:1/-1;justify-content:flex-end;gap:6px;margin-top:-2px;display:flex}.calendar-day-cell.today{border-color:#74d0c773;box-shadow:0 0 0 1px #74d0c71c,inset 0 0 18px #74d0c70f}.calendar-day-cell.muted{opacity:.46}.calendar-day-heading{border-bottom:1px solid #d6a95d14;justify-content:space-between;align-items:center;gap:8px;padding-bottom:7px;display:flex}.calendar-day-heading span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px}.calendar-day-heading strong{color:var(--cream);font-size:21px;font-weight:400}.calendar-day-cell.today .calendar-day-heading strong{color:var(--teal-bright);text-shadow:0 0 10px #74d0c747}.calendar-plan-stack{flex:1;align-content:start;gap:7px;display:grid}.calendar-plan-pill{background:#091214b8;border:1px solid #d6a95d1a;border-radius:8px;grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:7px;padding:8px;display:grid;position:relative}.calendar-plan-pill.done{background:#367c7621;border-color:#74d0c747}.calendar-check-btn,.calendar-plan-actions button{color:var(--subject-accent,var(--gold));background:0 0;border:0;place-items:center;padding:0;display:grid}.calendar-plan-pill strong{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-size:10px;display:block}.calendar-plan-pill span{color:var(--cream);margin-top:2px;font-size:13px;line-height:1.12;display:block}.calendar-plan-pill em{color:var(--muted);margin-top:3px;font-size:11px;font-style:normal;line-height:1.2;display:block}.calendar-plan-pill.done span,.calendar-plan-pill.done em{color:#7f8f87;-webkit-text-decoration:line-through #74d0c78c;text-decoration:line-through #74d0c78c}.calendar-plan-actions{gap:5px;display:grid}.calendar-plan-actions button{color:#eadcc59e;background:#0207096b;border:1px solid #d6a95d1a;border-radius:50%;width:22px;height:22px}.calendar-plan-actions button:hover:first-child{color:var(--teal-bright);border-color:#74d0c759}.calendar-plan-actions button:hover:last-child{color:#ffd1bd;background:#69231959;border-color:#be55368c}.empty-calendar-day{color:#a99b8461;align-self:center;margin-top:18px;font-size:12px}.plan-drawer{width:min(430px,100vw - 20px)}.plan-drawer-form{box-shadow:none;background:0 0;border:0;padding:0}@media (width<=1050px){.rewarding-progress-layout,.reward-board{grid-template-columns:1fr}.planner-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-score-card{grid-column:1/-1}.planning-board-grid,.roll-goal-grid{grid-template-columns:1fr}.planner-calendar-heading{align-items:flex-start}.calendar-heading-actions{justify-content:flex-start}.training-calendar-grid{padding-bottom:4px;overflow-x:auto}.calendar-day-cell{min-width:150px}.roll-goal-board-card,.focus-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-map-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.planner-overview-grid,.planner-score-card{grid-template-columns:1fr}.planner-score-card .reward-card-heading,.planner-score-card p,.planner-score-ring{grid-area:auto}.focus-toolbar-card{grid-template-columns:1fr}.calendar-card-topline,.calendar-heading-actions{flex-direction:column;align-items:flex-start}.calendar-view-toggle{width:100%}.calendar-view-toggle button{flex:1}.planner-compact-heading,.roll-goal-add-row{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.roll-goal-board-card,.focus-card-grid,.world-map-grid{grid-template-columns:1fr}.plan-item{grid-template-columns:24px minmax(0,1fr)}.plan-item em{grid-column:2;justify-self:start}}.game-card.skill-card{background:radial-gradient(circle at 82% 12%, var(--subject-glow,#74d0c72e), transparent 35%), linear-gradient(145deg, #0f1f22f5, #070e10eb 56%, #03080afa);min-height:198px}.xp-track-wrap{gap:4px;margin-top:7px;display:grid;position:relative}.xp-track{height:7px}.xp-reward-hint{color:#eadcc594;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:10px;position:relative;overflow:hidden}.quest-card{border-color:color-mix(in srgb, var(--subject-accent,var(--gold)) 32%, #d6a95d29);background:radial-gradient(circle at 80% 18%, var(--subject-glow,#74d0c733), transparent 33%), radial-gradient(circle at 8% 102%, #e9bd7224, transparent 30%), linear-gradient(145deg, #122326f5, #060d0ff0 55%, #04090bfa);min-height:248px;padding:18px;box-shadow:inset 0 0 34px #00000052,0 20px 42px #0000002e,0 0 0 1px #ffffff06}.quest-card:before{content:"";pointer-events:none;opacity:.44;background:linear-gradient(135deg,#ffffff17,#0000 23% 72%,#e9bd7214);position:absolute;inset:0}.quest-card:after{content:"";background:linear-gradient(90deg, transparent, var(--subject-accent,var(--gold)), var(--gold), transparent);height:2px;box-shadow:0 0 18px var(--subject-glow,#74d0c733);opacity:.78;position:absolute;top:0;left:18px;right:18px}.quest-card:hover{border-color:var(--subject-accent,var(--teal-bright));box-shadow:0 0 0 1px var(--subject-glow,#74d0c71f), 0 0 32px var(--subject-glow,#44b4aa33), inset 0 0 34px #00000057;transform:translateY(-2px)}.quest-glow-orb{background:radial-gradient(circle, var(--subject-accent,var(--gold)), transparent 68%);opacity:.16;filter:blur(2px);border-radius:50%;width:58px;height:58px;position:absolute;top:18px;right:16px}.quest-motif{opacity:.18;filter:drop-shadow(0 0 18px var(--subject-glow,#74d0c738))}.quest-title h2{text-shadow:0 0 18px var(--subject-glow,#74d0c724)}.quest-xp-banner{background:linear-gradient(90deg, var(--subject-glow,#74d0c726), #e9bd7212);border:1px solid #e9bd7229;border-radius:10px;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;display:flex;position:relative}.quest-xp-banner strong{color:var(--gold-bright);text-shadow:0 0 14px #e9bd723d;font-size:34px;font-weight:400;line-height:.9}.quest-xp-banner span{color:var(--cream);letter-spacing:.12em;text-transform:uppercase;font-size:12px}.quest-stats.vertical{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quest-stats.vertical span{background:#03090b6b;grid-template-columns:1fr;gap:4px;padding:9px 10px}.quest-stats.vertical strong{font-size:23px}.quest-stats.vertical em{white-space:normal;color:#eadcc5bd;font-size:11px}.focus-technique-card .xp-track-wrap{margin-top:9px}.roll-cue-board-card{grid-template-columns:1fr}.roll-cue-card{grid-template-columns:28px minmax(0,1fr) 26px;align-items:center;min-height:52px}:root{--bg:#0a171a;--bg-2:#102124;--panel:#142225eb;--panel-2:#182a2dd6;--panel-deep:#0a1417c2;--border:#e6b8693d;--border-strong:#e6b86961;--cream:#f2e7d4;--muted:#c1b39d;--dim:#958a7a}.app-shell{background:radial-gradient(circle at 82% 4%, #c5712d2b, transparent 25%), radial-gradient(circle at 14% 100%, #469e972e, transparent 35%), linear-gradient(135deg, #ffffff0a 0 1px, transparent 1px 12px), var(--bg)}.app-header{background:#091417f0}.center-slab{background:#111f22bd}.panel-slab,.center-slab,.skill-card,.log-card,.activity-panel{box-shadow:inset 0 0 26px #00000038,0 18px 45px #0000001f}.game-card.skill-card{background:radial-gradient(circle at 82% 12%, var(--subject-glow,#74d0c738), transparent 35%), linear-gradient(145deg, #162a2efa, #0c191cf2 56%, #081214fa)}.quest-card{background:radial-gradient(circle at 80% 18%, var(--subject-glow,#74d0c73d), transparent 33%), radial-gradient(circle at 8% 102%, #e9bd722e, transparent 30%), linear-gradient(145deg, #182d31fa, #0b181bf5 55%, #081214fa)}.technique-detail-card,.calendar-card,.roll-goal-board-card,.planner-score-card,.planner-metric-card,.planner-form-card,.roll-goal-list-card,.focus-toolbar-card,.weekly-plan-card,.reward-summary-card,.focus-technique-card,.world-card{background:linear-gradient(145deg,#182b2fe0,#0a1518f0)}.log-card input,.log-card select,.log-card textarea,.chip-box,.planner-form-card input,.planner-form-card select,.planner-form-card textarea,.focus-toolbar-card select{color:#f1e2c9;background:#091316b8;border-color:#e6b8693d}.skill-subject-chip,.subject-pill,.quest-stats.vertical span,.detail-stat-lines span,.technique-description-text,.calendar-day-cell,.calendar-plan-pill,.roll-goal-board-item{background-color:#0a161985}.roll-cue-card{align-items:start;min-height:82px}.roll-cue-card>svg{margin-top:4px}.roll-cue-card strong{white-space:normal;text-overflow:clip;overflow:visible}.roll-cue-card span{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.35;display:block}.quest-card{grid-template-rows:58px 64px minmax(104px,auto) 18px;align-content:stretch}.quest-title{grid-template-columns:24px minmax(0,1fr);align-items:start;gap:9px;min-height:58px;display:grid}.quest-title>svg{width:18px;min-width:18px;height:18px;margin-top:2px}.quest-title h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:50px;display:-webkit-box;overflow:hidden}.quest-xp-banner{align-self:stretch;min-height:64px}.quest-stats.vertical{align-self:stretch}.quest-enter{align-self:end}.quest-add-card{min-height:248px}.focused-log-card input[inputmode=numeric]{appearance:textfield;text-align:center;color:var(--gold);font-size:22px}.quest-card{grid-template-rows:58px 64px minmax(104px,auto) 18px}.quest-title{max-width:calc(100% - 24px);min-height:58px}.quest-title h2{letter-spacing:-.01em;-webkit-line-clamp:2;min-height:50px;font-size:22px;line-height:1.08}.calendar-progress-orb{--progress:0%;background:radial-gradient(circle at center, #0c191cf5 0 58%, transparent 59%), conic-gradient(var(--gold-bright) var(--progress), #e9bd7229 0);width:72px;height:72px;color:var(--cream);border:1px solid #e9bd723d;border-radius:50%;flex:none;align-content:center;place-items:center;gap:0;display:grid;box-shadow:0 0 18px #e9bd721f,inset 0 0 18px #00000038}.calendar-card-topline .calendar-progress-orb strong{color:var(--gold-bright);font-size:15px;font-weight:500;line-height:1}.calendar-card-topline .calendar-progress-orb span{color:var(--muted);font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;font-size:10px;line-height:1;display:block}.roll-cue-copy{gap:5px;min-width:0;display:grid}.roll-cue-card .roll-cue-note{color:var(--muted);white-space:normal;margin:0;font-size:13px;line-height:1.35;display:block;overflow:visible}.form-error{color:#ffd8c8;background:#6e2a1e38;border:1px solid #ff966252;border-radius:8px;margin:2px 0 8px;padding:9px 11px;font-size:13px;line-height:1.35}.planner-action-btn{color:#fff1d8;background:linear-gradient(#304848eb,#1c3033f0),radial-gradient(circle at 20% 0,#ffd77e2e,#0000 48%);border-color:#e9bd725c;padding-inline:16px;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s,color .16s;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff06,0 8px 18px #0000002e,inset 0 1px #ffffff14}.planner-action-btn svg{color:var(--gold-bright);filter:drop-shadow(0 0 8px #e9bd723d);transition:transform .16s,filter .16s}.planner-action-btn:after{content:"";pointer-events:none;opacity:.55;background:linear-gradient(135deg,#ffffff1f,#0000 35%,#e9bd7214);border-radius:5px;position:absolute;inset:1px}.planner-action-btn:hover:not(:disabled){color:#fff8e9;background:linear-gradient(#405b5af5,#243e41f5),radial-gradient(circle at 20% 0,#ffd77e3d,#0000 50%);border-color:#ffd77ead;transform:translateY(-2px);box-shadow:0 0 18px #e9bd722e,0 12px 24px #0000003d,inset 0 1px #ffffff1f}.planner-action-btn:hover:not(:disabled) svg{filter:drop-shadow(0 0 10px #ffd77e61);transform:scale(1.08)rotate(-4deg)}.planner-action-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 0 12px #e9bd721f,inset 0 1px 8px #00000040}.plan-drawer{width:min(470px,100vw - 36px);padding:66px 30px 30px}.plan-drawer .drawer-close{top:20px;right:22px}@media (width<=560px){.plan-drawer{width:min(100vw,100vw - 18px);padding:62px 22px 24px}.avatar-copy{display:none}}.plan-drawer-form{background:radial-gradient(circle at 18% 0,#74d0c721,#0000 36%),linear-gradient(145deg,#182b2fe6,#0a1518f5);border:1px solid #d6a95d2e;border-radius:16px;padding:24px;box-shadow:inset 0 0 28px #00000038,0 16px 36px #0000002e}.plan-drawer-form .primary-btn{margin-top:4px}@media (width<=560px){.plan-drawer-form{padding:19px}}.profile-crop-backdrop{z-index:40;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000009e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.profile-crop-modal{border:1px solid var(--border-strong);background:radial-gradient(circle at 20% 0,#74d0c729,#0000 38%),linear-gradient(145deg,#182b2ff5,#071012fa);border-radius:18px;width:min(430px,100vw - 32px);padding:28px;position:relative;box-shadow:0 28px 80px #00000080,inset 0 0 32px #00000047}.profile-crop-close{top:18px;right:18px}.profile-crop-heading{gap:7px;margin-bottom:18px;padding-right:42px;display:grid}.profile-crop-heading span{color:var(--cream);font-family:var(--font-serif);align-items:center;gap:8px;font-size:24px;display:inline-flex}.profile-crop-heading svg{color:var(--gold)}.profile-crop-heading p{color:var(--muted);margin:0;line-height:1.35}.profile-crop-stage{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#03090bc2;border:1px solid #e9bd723d;border-radius:18px;width:280px;height:280px;margin:0 auto 18px;position:relative;overflow:hidden}.profile-crop-stage:active{cursor:grabbing}.profile-crop-stage img{object-fit:cover;transform-origin:50%;pointer-events:none;width:100%;height:100%;position:absolute;top:50%;left:50%}.profile-crop-mask{pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 999px #0000003d,inset 0 0 0 2px #ffd77e61,inset 0 0 28px #00000080}.profile-crop-mask:after{content:"";border:1px dashed #ffecbeb3;border-radius:50%;position:absolute;inset:18px;box-shadow:0 0 22px #e9bd7229}.profile-crop-controls{gap:12px;display:grid}.profile-crop-controls label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:12px;font-size:12px;display:grid}.profile-crop-controls input[type=range]{accent-color:var(--gold-bright)}.profile-crop-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}@media (width<=460px){.profile-crop-modal{padding:22px}.profile-crop-stage{width:240px;height:240px}.profile-crop-actions{grid-template-columns:1fr}}.gate-shell{place-items:center;min-height:calc(100vh - 98px);padding:28px;display:grid}.gate-card{border:1px solid var(--border-strong);text-align:left;background:radial-gradient(circle at 18% 0,#ffd77e29,#0000 34%),radial-gradient(circle at 100% 20%,#74d0c721,#0000 38%),linear-gradient(145deg,#182b2ff0,#071012fa);border-radius:18px;gap:14px;width:min(430px,100vw - 32px);padding:30px;display:grid;box-shadow:0 28px 80px #00000061,inset 0 0 32px #00000047}.gate-emblem{width:58px;height:58px;color:var(--gold-bright);background:#050c0e73;border:1px solid #e9bd7261;border-radius:18px;place-items:center;display:grid;box-shadow:inset 0 0 18px #00000047,0 0 22px #e9bd721f}.gate-kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;margin:4px 0 -9px;font-size:12px}.gate-card h1{color:var(--cream);margin:0;font-size:clamp(30px,5vw,44px);line-height:1}.gate-copy{color:var(--muted);margin:0;line-height:1.42}.gate-card label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:12px;display:grid}.gate-card input{color:#f1e2c9;background:#091316b8;border:1px solid #e6b8693d;border-radius:9px;width:100%;min-height:44px;padding:10px 12px;box-shadow:inset 0 1px 5px #00000040}.gate-card .primary-btn{margin-top:4px}.reorder-grid.drag-preview-active .draggable-card-shell:not(.dragging){transition:transform .22s cubic-bezier(.2,.8,.2,1),filter .18s,opacity .18s,box-shadow .18s}.draggable-card-shell{cursor:grab;will-change:transform;border-radius:22px;min-width:0;transition:transform .22s cubic-bezier(.2,.8,.2,1),filter .18s,opacity .18s,box-shadow .18s;position:relative}.draggable-card-shell:active{cursor:grabbing}.draggable-card-shell.dragging{opacity:.55;filter:drop-shadow(0 0 22px #d6a95d47);transform:scale(.985)rotate(-.5deg)}.draggable-card-shell>.quest-card,.draggable-card-shell>.skill-card{width:100%;height:100%}.technique-drag-shell{display:flex}.technique-drag-shell>.skill-card{flex:1}
