/* SEIBFIT 2 — dark/noir, red neon accents, responsive editor and anatomy viewer */
:root{--bg:#070809;--panel:#111217;--panel-2:#191a22;--border:#303037;--ink:#f8f5f6;--muted:#a7a6b0;--soft:#85828b;--green:#ff3449;--green2:#ff5265;--purple:#e44f64;--orange:#ffb481;--red:#ff4e61;--nav:#0d0d12;--shadow:0 16px 46px #0008}
html{background:#070809;color-scheme:dark}body{background:radial-gradient(ellipse 90% 38% at 93% -10%,#520e18 0%,transparent 65%),#070809}
.glow-a{background:#ed1734;opacity:.085}.glow-b{background:#7e0a20;opacity:.09}
.app-header{background:linear-gradient(90deg,#101013,#0b0b0ed9);border-bottom:1px solid #3a2228}
.brand-mark{background:linear-gradient(145deg,#ff344e,#8e101f);color:#fff;box-shadow:0 0 22px #fa183037}
.brand-mark svg{display:none}.brand-mark::before{content:'S';font-family:Impact,ui-sans-serif,sans-serif;font-size:29px;font-style:italic;font-weight:950;transform:skew(-9deg)}
.brand-name{font-style:italic;letter-spacing:.1px;font-weight:950}.brand-sub{color:#afa1a6}.bottom-nav{background:#0d0d12f5;border-top-color:#51212c}
.nav-item.active{color:#ff4558}.nav-item.active svg{filter:drop-shadow(0 0 9px #e31d34)}
.card{background:linear-gradient(155deg,#17181e,#0f1015 85%);border:1px solid #302e35;box-shadow:0 15px 32px #0003}
.hero{background:radial-gradient(circle at 95% 4%,#93132166,transparent 57%),linear-gradient(133deg,#201317,#111216 75%);border:1px solid #68212c;box-shadow:inset 0 1px #e9475b16,0 14px 34px #0007}
.hero-kicker{color:#ff8b9b}.hero p{color:#d0c1c6}
.button-primary{background:linear-gradient(130deg,#ff4557,#c81730);color:#fff;box-shadow:0 6px 22px #eb163122}
.button-primary:hover{background:linear-gradient(130deg,#ff6979,#e42640)}
.button-secondary{background:#2e2027;color:#ffd8dc;border:1px solid #66242e}
.button-ghost{border:1px solid #464149;color:#e8dde2;background:#121216}
.button-danger{background:#421b23;color:#ffc1c8;border:1px solid #85252c}
.button:active,.quick-tile:active,.catalog-row button:active{transform:scale(.975)}
input,select,textarea{background:#101114;border-color:#40353b}
input:focus,select:focus,textarea:focus{border-color:#ff465d;box-shadow:0 0 0 3px #ff364a28}
.day-chip{background:#17151a;border-color:#40333b}.day-chip.selected{color:#fff;box-shadow:0 0 19px #bc102b35}.day-chip.selected small{color:#fff8}
.exercise-number{background:#4f1e2b;color:#ff8792}.exercise-info .group{color:#ff6577}
.exercise-head{background:linear-gradient(100deg,#201218 0%,transparent 65%)}
.focus-heading{color:#ff536a}.set-row.done input{background:#301b23;border-color:#7a2637}.check-set.done{color:#fff}.active-banner{background:#24151a;border-color:#9e3447}.pill.green{background:#4a1c29;color:#ffa4b3}.pill.purple{background:#3e2330;color:#ff93b2}
.progress-fill{background:linear-gradient(90deg,#9f132e,#ff4a61)}
.avatar{overflow:hidden;background:linear-gradient(145deg,#42131e,#1c1921);color:#fff;border:1px solid #8f3443}
.avatar img{width:100%;height:100%;object-fit:cover;display:block}
.number-big{font-size:28px;line-height:1.2;font-weight:950}
.week-dots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:18px;text-align:center}
.week-dots>div{display:grid;gap:7px}.week-dots small{font-weight:800;color:var(--muted);font-size:10px}.week-dots span{height:34px;display:grid;place-items:center;background:#1e1b20;border-radius:9px;color:#7e7781;font-weight:900}.week-dots .marked{background:#702137;color:#fff}.week-dots .planned{background:#30303a;color:#b6afb9}
.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.quick-tile{border-radius:16px;background:linear-gradient(150deg,#21171d,#151419);border:1px solid #49303a;padding:16px 10px;display:grid;justify-items:start;gap:6px;text-align:left;color:#fff;min-height:117px;transition:transform .2s,border-color .2s}
.quick-tile:hover{border-color:#fc4d62;transform:translateY(-2px)}.quick-tile>span{font-size:28px;font-weight:600;color:#ff5366}.quick-tile b{font-size:12px}.quick-tile small{color:var(--muted);font-size:10px;line-height:1.4}
.editor-panel{border:1px solid #5a303b}.field-label{display:block;color:#ff6478;font-weight:900;letter-spacing:1.2px;font-size:10px;margin-bottom:9px}.wide-select{width:100%;font-weight:750;font-size:16px;padding:13px}
.editor-ex-list{display:grid;gap:12px}.editor-ex{padding:15px}.editor-ex-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}.editor-ex-heading b{display:block;font-size:14px;line-height:1.35}.editor-ex-heading small{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.editor-count{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#4a1828;color:#ff8e9a;font-weight:900}
.editor-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.editor-controls button{min-width:0;min-height:51px;border:1px solid #57303c;background:#2a1c25;color:#ffcad0;border-radius:12px;font-size:18px;font-weight:800;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.editor-controls span{font-size:10px;font-weight:750}.editor-controls button.danger{background:#35151f;color:#ff93a0;border-color:#762a3a}
.add-workout{margin:16px 0 5px;min-height:55px;font-size:15px;border-radius:15px;letter-spacing:.1px}
.catalog-search-wrap{position:sticky;top:-1px;padding:12px 0 8px;background:var(--panel);z-index:2}.catalog-search-wrap input{width:100%;padding:15px;font-size:16px;border-color:#70414e}
.catalog-search-wrap select{margin-top:3px}.catalog-list{display:grid;gap:3px;margin-top:15px}.catalog-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #383037;padding:12px 0}.catalog-row-main{min-width:0;flex:1}.catalog-row-main b{display:block;font-size:13px;line-height:1.35}.catalog-row-main small{display:block;color:var(--muted);font-size:10px;margin-top:5px;line-height:1.3}.catalog-row-actions{display:flex;gap:5px;align-items:center}.catalog-row-actions .button{white-space:nowrap}.demo-catalog{width:38px;height:38px;display:grid;place-items:center;font-size:18px;line-height:1}
.settings-accordion{border:1px solid #47303a;border-radius:16px;background:linear-gradient(150deg,#191418,#0f1012);overflow:hidden;margin-top:12px}.settings-accordion>summary{display:grid;grid-template-columns:33px 1fr;column-gap:13px;align-items:center;cursor:pointer;padding:18px;list-style:none;position:relative}.settings-accordion>summary::-webkit-details-marker{display:none}.settings-accordion>summary::after{content:'⌄';color:#ff6778;position:absolute;right:15px;top:16px;font-size:20px;transition:transform .2s}.settings-accordion[open]>summary::after{transform:rotate(180deg)}.settings-accordion summary>span{grid-row:span 2;display:grid;place-items:center;height:34px;width:34px;border-radius:10px;background:#501e2b;color:#ff9baa;font-size:20px}.settings-accordion summary b{font-size:14px}.settings-accordion summary small{color:var(--muted);font-size:10px;margin-top:3px}.settings-accordion[open]{border-color:#8d3448}.accordion-content{border-top:1px solid #51313a;padding:18px;animation:fadeUp .24s ease both}.accordion-content>.button{margin-bottom:6px}
.profile-card{display:flex;align-items:center;gap:16px;margin:16px 0 22px}.profile-card h2{margin:0;font-size:22px}.profile-card .small-copy{margin:7px 0 0}.avatar-large{width:86px;height:86px;flex-shrink:0;border-radius:24px;border:2px solid #a62942;overflow:hidden;background:linear-gradient(120deg,#75243a,#1c141a);display:grid;place-items:center;font-size:34px;color:#ffd2d7;box-shadow:0 0 25px #fa193132}.avatar-large img{width:100%;height:100%;object-fit:cover}
.welcome-top{text-align:center}.welcome-top img{border-radius:22px;box-shadow:0 0 37px #c80b2d49}.welcome-top .eyebrow{margin-top:15px}.welcome-top h2{font-size:29px;font-weight:950;line-height:1.05}
.welcome-top p{font-size:13px;line-height:1.6}.welcome-top+form{margin-top:23px}
.guide-links{grid-template-columns:1fr}.guide-links .button:last-child{grid-column:auto}.modal-open{overflow:hidden}
.card,.exercise-card,.empty,.profile-card,.active-banner{animation:fadeUp .32s cubic-bezier(.2,.8,.2,1) both}
@keyframes fadeUp{0%{opacity:.65;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.app-header{gap:10px}.quick-grid{gap:7px}.quick-tile{padding:12px 9px}.quick-tile b{font-size:10px}.quick-tile small{font-size:9px}.profile-card h2{font-size:18px}.stat{padding:13px}.stat .number{font-size:23px}.editor-controls{gap:5px}.editor-controls button{min-height:53px}.catalog-row-actions .button{font-size:11px;padding:8px}.catalog-row{gap:7px}.catalog-search-wrap{padding:8px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.modal-backdrop{background:#030306dc;backdrop-filter:blur(10px);padding:calc(10px + env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}
.modal{background:linear-gradient(150deg,#191116,#0e0f12 70%);border-color:#6e2e3d;max-height:min(89dvh,850px);box-shadow:0 25px 80px #000d;overscroll-behavior:contain}
.modal h2{font-weight:950;line-height:1.18}.modal .close{color:#ffd0d6;background:#3e1c25;border:1px solid #733243;min-height:34px;min-width:34px}
.toast{background:#ddf8df;color:#172118}.toast.show{z-index:30}
@media(orientation:landscape) and (pointer:coarse){.modal{max-height:90dvh;width:min(740px,100%)}}
.brand-mark{background:#060608 url('./icon-192.png') center/cover no-repeat;border:1px solid #7d2133;box-shadow:0 0 22px #fa193040}
.brand-mark::before{display:none}

/* v3.1: readable technique-first exercise guide */
.catalog-en{color:#f1a4b1!important;font-weight:800;font-size:11px!important;margin-top:5px!important;}
.catalog-row-main b{font-size:14px;}
.technique-panel{margin:20px 0 16px;padding:17px;border:1px solid #643039;border-radius:20px;background:linear-gradient(145deg,#24151b,#101115 68%);}
.technique-top{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.technique-top h3{font-size:17px;margin:0 0 4px;line-height:1.2;}
.technique-top .small-copy{margin:0;}
.technique-icon{display:grid;place-items:center;border-radius:12px;background:#612234;color:#ffbcc6;font-size:22px;width:42px;height:42px;flex:0 0 42px;}
.technique-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.technique-steps li{display:grid;grid-template-columns:30px 1fr;gap:10px;background:#121217;border:1px solid #36272d;border-radius:13px;padding:12px;}
.technique-steps .tech-number{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#501b29;color:#ffa2b1;font-weight:900;font-size:13px;}
.technique-steps strong{font-size:13px;color:#f5ecee;}
.technique-steps p{font-size:13px;line-height:1.6;color:#d3cbd0;margin:5px 0 0;}
.technique-warning{margin-top:12px;padding:14px 15px;border-left:3px solid #ff4559;background:#321921;border-radius:0 11px 11px 0;}
.technique-warning strong{font-size:13px;color:#ff9cab;}.technique-warning p{margin:5px 0 0;line-height:1.55;color:#e9d8de;font-size:12px;}
.guide-en{color:#ff98a9;font-size:14px;font-weight:750;line-height:1.4;margin:3px 0 8px;}
.technique-more{background:#1b151a;border:1px solid #49303a;padding:14px;border-radius:14px;margin:12px 0 18px;}
.technique-more summary{cursor:pointer;color:#ffd7dc;font-size:13px;font-weight:900;}
.technique-more .guide-links{margin-top:13px;display:grid;gap:9px;}
.technique-more .guide-links a{text-align:center;}
@media(max-width:390px){.technique-panel{padding:12px}.catalog-row-actions .button{padding:8px 7px}.catalog-row-main b{font-size:13px;}}
