:root{--bg:#f4f0eb;--ink:#312539;--muted:#847788;--plum:#281b32;--purple:#654778;--gold:#c6a773;--line:#e2d9e3;--white:#fffdfb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Onest,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--purple)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bd955c;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,.serif{font-family:'Playfair Display',serif;font-weight:400}h1{font-size:clamp(36px,4vw,57px);line-height:1.12;letter-spacing:-1.8px}h2{font-size:32px;letter-spacing:-.7px}h3{font-weight:500}p{line-height:1.7}.muted{color:var(--muted)}.tiny{font-size:12px;line-height:1.6}.eyebrow{font-size:10px;letter-spacing:2.8px;text-transform:uppercase;color:var(--gold);font-weight:600}.layout{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{background:var(--plum);color:#c9bdce;padding:32px 22px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid #ffffff0d}.brand{display:flex;align-items:center;gap:13px;margin-bottom:50px;color:#f3e8d7}.brand-mark{width:38px;height:44px;border:1px solid #bc9e6a;display:grid;place-items:center;transform:rotate(0deg);border-radius:50% 50% 4px 4px;font-family:'Playfair Display';font-size:27px}.brand-name{font-family:'Playfair Display';font-size:19px}.brand small{display:block;font-family:Onest;font-size:8px;letter-spacing:2px;color:#a28baf;margin-top:7px}.nav{display:grid;gap:8px}.nav button{border:0;text-align:left;color:inherit;background:transparent;padding:14px;border-radius:10px;font-size:13px;display:flex;align-items:center;gap:13px}.nav button.active,.nav button:hover{background:#ffffff0b;color:#eee1c9}.nav button.active{box-shadow:inset 2px 0 var(--gold)}.nav .icon{width:20px;font-size:18px;color:#ad93bf}.sidebar-foot{margin-top:auto;padding:24px 10px 0;border-top:1px solid #ffffff15;color:#a797b0;font-size:11px;line-height:1.8}.main{padding:0 50px 45px;max-width:1550px;width:100%;margin:auto}.topbar{height:95px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px}.topbar .path{font-size:11px;letter-spacing:1px;color:var(--muted)}.account{display:flex;align-items:center;gap:12px;background:none;border:0;color:var(--ink);text-align:left}.avatar{height:37px;width:37px;display:grid;place-items:center;border-radius:50%;background:#e8dfed;color:var(--purple)}.welcome{display:flex;justify-content:space-between;align-items:flex-end;margin:38px 0 28px;gap:24px}.welcome h1{margin-bottom:13px}.welcome p{font-size:13px;margin-bottom:0}.date{font-size:11px;color:var(--muted);white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--white);border:1px solid var(--line);border-radius:15px;margin-bottom:28px;box-shadow:0 8px 20px #301d3803}.stat{padding:22px 27px;position:relative}.stat+.stat:before{content:'';position:absolute;left:0;top:25%;height:50%;width:1px;background:var(--line)}.stat strong{font-size:30px;font-weight:500;letter-spacing:-1px;display:block;margin-bottom:7px}.stat span{font-size:11px;color:var(--muted)}.daily-card{border-radius:18px;padding:34px 40px;background:radial-gradient(ellipse at 85% 20%,#78558a55,transparent 50%),linear-gradient(110deg,#2a1c35,#3d2949);color:#f8f0e9;display:grid;grid-template-columns:1.5fr 1fr;gap:20px;position:relative;overflow:hidden;min-height:238px;box-shadow:0 13px 40px #30203913}.daily-card h2{font-size:37px;margin:13px 0 12px}.daily-card p{font-size:12px;color:#c4b6ce;max-width:390px}.daily-meta{display:flex;gap:21px;margin:19px 0 0;color:#b5a3c1;font-size:10px}.orbit{position:relative;display:grid;place-items:center;min-height:150px}.orbit:before,.orbit:after{content:'';position:absolute;width:186px;height:186px;border:1px solid #cdb18425;border-radius:50%;transform:rotate(25deg) scaleX(.75)}.orbit:after{transform:rotate(-38deg) scaleX(.75);width:215px;height:215px}.orb{width:120px;height:120px;border:1px solid #d3b98055;background:radial-gradient(circle at 35% 30%,#c9a7d233,#392442aa 70%);border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 25px #d9c0ec10,0 0 40px #bb96d01a;position:relative}.orb span{font-family:'Playfair Display';font-size:51px;color:#ddc8a0}.orb small{display:block;font-family:Onest;font-size:8px;letter-spacing:2px;text-align:center;margin-top:-7px}.btn{border:1px solid transparent;border-radius:8px;background:var(--purple);color:white;padding:13px 21px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-size:12px;text-decoration:none;transition:transform .18s,background .18s;min-height:44px}.btn:hover{transform:translateY(-2px);background:#77538b}.btn.gold{background:#d1b785;color:#35283b}.btn.secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn.ghost{background:transparent;color:var(--purple);padding-left:0}.section-head{display:flex;justify-content:space-between;align-items:center;margin:34px 0 19px}.section-head h2{font-size:27px;margin:0}.section-head span{font-size:11px;color:var(--muted)}.levels{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.level{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:26px;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}.level:hover{transform:translateY(-5px);box-shadow:0 17px 30px #38263f09}.level-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.number{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.line-icon{width:57px;height:57px;display:grid;place-items:center;font-size:36px;color:var(--purple);background:linear-gradient(135deg,#f5f0f7,#eee6f1);border-radius:14px;font-family:'Playfair Display'}.level h3{font-family:'Playfair Display';font-size:23px;line-height:1.2;min-height:52px;margin-bottom:11px}.level p{font-size:11px;line-height:1.8;color:var(--muted);flex:1}.level .btn{border-top:1px solid var(--line);border-radius:0;padding:18px 0 0;justify-content:space-between;min-height:30px;margin-top:15px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-size:9px;padding:5px 9px;border:1px solid var(--line);border-radius:20px;color:var(--muted)}.bottom-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;margin-top:24px}.panel{background:var(--white);padding:26px;border:1px solid var(--line);border-radius:15px}.panel h3{font-size:15px}.quote{background:#eee7ee;border:none;display:flex;flex-direction:column;justify-content:center}.quote p{font-family:'Playfair Display';font-size:22px;line-height:1.6;margin-bottom:14px}.sparkline{display:flex;align-items:flex-end;height:100px;gap:7px;margin:22px 0 8px;border-bottom:1px solid var(--line);padding-bottom:1px}.bar{flex:1;min-height:3px;background:linear-gradient(#ac8bbc,#695078);border-radius:4px 4px 0 0;position:relative}.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.disclaimer{margin-top:27px;color:#948896;font-size:10px;line-height:1.8}.auth{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:var(--white)}.auth-art{background:radial-gradient(ellipse at 50% 40%,#69457566,transparent 60%),#24182e;color:#f4ecdf;display:flex;flex-direction:column;padding:55px 10%;justify-content:center;overflow:hidden;position:relative}.auth-art h1{font-size:clamp(43px,5vw,76px);margin-bottom:28px;z-index:1}.auth-art p{font-size:14px;color:#bdadca;max-width:410px}.auth-art .orbit{min-height:230px;margin-bottom:35px}.auth-art .eyebrow{margin-bottom:30px}.auth-form{padding:45px;display:flex;align-items:center;justify-content:center}.auth-form form{width:100%;max-width:380px}.auth-form h2{font-size:33px}.form-group{margin:20px 0}.form-group label,.field-label{display:block;font-size:12px;font-weight:500;margin-bottom:9px}.input,textarea,select{border:1px solid #dcd2df;border-radius:9px;padding:13px 14px;background:#fffdfb;width:100%;color:var(--ink);font-size:14px}textarea{min-height:110px;resize:vertical;line-height:1.6}.auth-form .btn{width:100%;margin-top:10px}.error{color:#a2394a;font-size:13px;line-height:1.7;margin-top:15px}.notice{padding:15px 19px;background:#f0e9f3;border-radius:10px;font-size:12px;line-height:1.8;color:#765a81;margin:15px 0}.notice.warning{background:#f6eddd;color:#8d6b3e}.exercise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.exercise-tile{min-height:220px;display:flex;flex-direction:column}.exercise-tile h3{font-family:'Playfair Display';font-size:25px}.exercise-tile p{font-size:12px;color:var(--muted);flex:1}.exercise-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}.exercise-controls select{width:auto;flex:1}.exercise-shell{max-width:850px;margin:30px auto}.exercise-shell h1{font-size:38px}.exercise-body{padding:30px;background:var(--white);border:1px solid var(--line);border-radius:18px}.concealed{max-width:290px;height:210px;margin:15px auto 28px;border-radius:16px;background:radial-gradient(circle at 50% 50%,#694777,#291d35 80%);border:6px solid #ece4ee;box-shadow:0 14px 30px #30203920;display:grid;place-items:center;position:relative;overflow:hidden;color:#c9af83;font-size:65px;font-family:'Playfair Display';transform-style:preserve-3d}.concealed:before{content:'';position:absolute;inset:12px;border:1px solid #bda77e42;border-radius:7px}.concealed:after{content:'ШКОЛА ИННЫ РЫЖКОВОЙ';position:absolute;bottom:25px;font-size:7px;letter-spacing:2px;font-family:Onest;color:#c8b3d1}.concealed.revealed{animation:flip .7s ease;background:#f4edf5;color:var(--purple);font-size:50px}.concealed.revealed:after{display:none}.color-card{height:100%;width:100%}.answer-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:18px 0}.choice{padding:16px 10px;border:1px solid var(--line);background:#fffdfb;border-radius:9px;color:var(--ink);text-align:center;min-height:54px;font-size:12px}.choice.selected{background:#eee4f2;border-color:#9573a7;box-shadow:0 0 0 1px #9573a7}.choice-symbol{font-size:24px;display:block;margin-bottom:6px}.chips{display:flex;flex-wrap:wrap;gap:9px}.chips label{font-size:11px;display:flex;gap:7px;align-items:center;border:1px solid var(--line);padding:10px 13px;border-radius:8px;cursor:pointer}.chips label:has(input:checked){background:#eee4f2;border-color:#9573a7}.chips input{accent-color:var(--purple)}.question{margin:24px 0}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.actions .btn{flex:1}.portrait,.target-photo{display:block;max-width:100%;max-height:430px;object-fit:contain;margin:20px auto;border-radius:12px;background:#eee8ef}.portrait{max-height:360px}.result-summary{display:flex;align-items:center;gap:18px;padding:20px;background:#eee8f0;border-radius:12px;margin:20px 0}.result-summary strong{font-size:34px;font-weight:500}.reveal-text{white-space:pre-wrap;line-height:1.85;font-size:14px}.comparison{border-top:1px solid var(--line);padding:15px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px}.comparison .yes{color:#537964}.comparison .no{color:#a37a55}.saved-answer{background:#f5f0f4;border-radius:12px;padding:22px;margin:25px 0}.saved-answer p{white-space:pre-wrap;font-size:13px}.sources{font-size:11px;line-height:1.8}.sources a{display:block;word-break:break-word;margin:7px 0}audio{width:100%;margin:15px 0}.journal-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:21px 0;border-bottom:1px solid var(--line);cursor:pointer}.journal-item:hover{color:var(--purple)}.journal-item h3{font-size:14px;margin:0 0 7px}.journal-item p{font-size:10px;margin:0;color:var(--muted)}.score{font-size:19px;color:var(--purple);white-space:nowrap}.badge-list{display:flex;gap:12px;flex-wrap:wrap}.badge{padding:18px;background:#f1edf2;border:1px solid var(--line);border-radius:10px;color:#a397a8;font-size:11px}.badge.earned{background:#f7eddc;color:#8d693c;border-color:#d8c299}.rank-row{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:20px 0}.rank-number{font-family:'Playfair Display';font-size:26px;color:var(--gold)}.category{margin:23px 0}.category .track{height:7px;background:#eee6ef;border-radius:10px;overflow:hidden;margin-top:10px}.category .track div{height:100%;background:#9573a6;border-radius:10px}.category .labels{display:flex;justify-content:space-between;font-size:12px}.admin-tabs{display:flex;gap:10px;margin:25px 0;flex-wrap:wrap}.admin-task{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}.admin-task h3{font-size:13px;margin:0 0 7px}.admin-task .actions{margin:0}.admin-task .btn{font-size:10px;padding:9px 12px}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.editor-grid .full{grid-column:1/-1}.code-area{font-family:monospace;font-size:12px;min-height:200px}.modal-backdrop{position:fixed;inset:0;background:#1f152bcc;z-index:20;display:flex;align-items:flex-start;justify-content:center;padding:35px 15px;overflow-y:auto}.modal{background:var(--white);width:100%;max-width:900px;padding:30px;border-radius:18px;position:relative}.modal-close{float:right;background:none;border:0;font-size:25px;color:var(--purple)}.empty{text-align:center;padding:40px 15px;color:var(--muted);font-size:13px;line-height:1.8}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(100px);background:#34233f;color:#fff3dd;padding:15px 25px;border-radius:12px;z-index:50;transition:transform .3s;max-width:90%;font-size:12px;box-shadow:0 10px 30px #21172833}#toast.show{transform:translateX(-50%) translateY(0)}@media(max-width:800px){#toast{bottom:95px}.section-head{gap:15px}}.target-photo{animation:unveil .7s ease}@keyframes unveil{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.loading{padding:70px;text-align:center;color:var(--muted)}.mobile-brand{display:none}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spacer{height:20px}.periods{display:flex;gap:8px}.periods .btn{padding:9px 15px}.subtitle{font-size:13px;max-width:650px;color:var(--muted)}@keyframes flip{0%{transform:rotateY(180deg);opacity:0}100%{transform:rotateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:1400px){.main{padding-left:65px;padding-right:65px}.level h3{font-size:26px}}@media(max-width:1100px){.layout{grid-template-columns:205px 1fr}.sidebar{padding:26px 15px}.main{padding:0 28px 35px}.level{padding:21px}.stat{padding:20px}.daily-card{padding:30px}.levels{gap:12px}.level h3{font-size:21px}}@media(max-width:800px){.layout{display:block}.sidebar{height:auto;position:static;padding:17px 20px}.brand{margin:0}.brand-name{font-size:17px}.brand small{font-size:7px}.brand-mark{height:35px;width:30px;font-size:22px}.sidebar .nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:space-around;gap:0;background:#281b32f5;padding:7px 4px max(9px,env(safe-area-inset-bottom));backdrop-filter:blur(12px);border-top:1px solid #ffffff15}.nav button{display:flex;flex-direction:column;padding:8px 4px;gap:5px;font-size:8px;flex:1;text-align:center;border-radius:5px}.nav button.active{box-shadow:inset 0 2px var(--gold)}.nav .icon{font-size:18px;height:21px}.sidebar-foot{display:none}.main{padding:0 22px 110px}.topbar{height:68px}.topbar .path{font-size:9px}.account .tiny{display:none}.welcome{margin:28px 0 23px}.welcome h1{font-size:38px;letter-spacing:-1px}.date{display:none}.stats{grid-template-columns:repeat(2,1fr);margin-bottom:20px}.stat{padding:19px 22px}.stat strong{font-size:27px}.stat:nth-child(3),.stat:nth-child(4){border-top:1px solid var(--line)}.stat:nth-child(3):before{display:none}.stat span{font-size:10px}.daily-card{grid-template-columns:1fr .6fr;padding:27px 23px;min-height:230px;gap:4px}.daily-card h2{font-size:29px}.daily-card p{font-size:11px}.daily-meta{gap:12px;font-size:9px}.orb{width:84px;height:84px}.orb span{font-size:34px}.orb small{font-size:6px;margin-top:0}.orbit:before,.orbit:after{width:125px;height:125px}.orbit:after{width:150px;height:150px}.levels{grid-template-columns:1fr}.level{padding:24px;display:grid;grid-template-columns:64px 1fr;gap:0 20px}.level-top{grid-row:1/4;flex-direction:column-reverse;justify-content:flex-end;gap:15px;margin-bottom:0}.level h3{font-size:24px;min-height:0;margin-bottom:10px}.level p{margin-bottom:15px;font-size:12px}.level .tags{grid-column:2}.level .btn{grid-column:1/-1;margin-top:22px;font-size:12px}.bottom-grid{grid-template-columns:1fr}.section-head h2{font-size:25px}.section-head span{font-size:9px}.quote{padding:25px}.quote p{font-size:21px}.auth{grid-template-columns:1fr}.auth-art{padding:40px 30px 30px}.auth-art .orbit{display:none}.auth-art h1{font-size:42px;margin-bottom:14px}.auth-art p{font-size:12px;margin-bottom:0}.auth-art .eyebrow{margin-bottom:20px}.auth-form{padding:30px 25px 55px}.exercise-shell{margin-top:25px}.exercise-shell h1{font-size:32px}.exercise-body{padding:22px 18px}.concealed{height:190px;width:245px;max-width:100%}.answer-options{grid-template-columns:repeat(2,1fr)}.actions .btn{flex:1 1 42%;font-size:11px}.panel{padding:23px}.editor-grid{grid-template-columns:1fr}.editor-grid .full{grid-column:1}.admin-task{align-items:flex-start;flex-direction:column;gap:10px}.admin-task .actions{width:100%}.modal{padding:22px 18px}.modal-backdrop{padding:15px 8px}.topbar .account{font-size:11px}.chart-labels{font-size:8px}}@media(max-width:360px){.main{padding-left:16px;padding-right:16px}.daily-card{grid-template-columns:1fr}.daily-card .orbit{display:none}.welcome h1{font-size:33px}.level{gap:0 14px;padding:20px}.nav button{font-size:7px}.stats .stat{padding:18px}.btn{padding:12px 17px}.rank-row{grid-template-columns:25px 1fr auto;gap:9px}}
