:root{--bg:#071b2d;--card:#0f2d48cc;--line:#1b79c8;--cyan:#16baf2;--gold:#f3b63d;--txt:#eef7ff;--muted:#9fb6c9;--danger:#e75858}*{box-sizing:border-box}body{margin:0;font-family:Tahom​a,Arial,sans-serif;background:radial-gradient(circle at top,#123a5c,#061522 70%);color:var(--txt);min-height:100vh}.home{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px}.brand{text-align:center;margin-bottom:28px}.logo{width:92px;height:92px;margin:auto;border-radius:28px;background:linear-gradient(135deg,#166db9,#80366b);display:grid;place-items:center;font-size:44px;box-shadow:0 0 40px #1a9feb55}.brand h1{font-size:42px;margin:16px 0 6px}.brand p,.big-card p,.hint{color:var(--muted)}.choose{display:grid;grid-template-columns:repeat(2,minmax(260px,430px));gap:20px;width:min(900px,100%)}.big-card{text-decoration:none;color:var(--txt);background:linear-gradient(180deg,#123c60cc,#0b243bcc);border:1px solid #1f74b8;border-radius:28px;padding:34px;min-height:230px;box-shadow:0 10px 40px #0006;transition:.25s}.big-card:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 0 35px #18a5e355}.big-card span{font-size:54px}.big-card h2{font-size:36px;margin:12px 0}.actions{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.actions a,.top a,button{background:linear-gradient(90deg,#1179c8,#14b7e7);color:white;text-decoration:none;border:0;border-radius:14px;padding:12px 18px;font-weight:bold;cursor:pointer}.top{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:16px 22px;background:#061522dd;backdrop-filter:blur(12px);border-bottom:1px solid #1a5e91}.top h1{margin:0;font-size:24px}.container{width:min(1180px,100%);margin:auto;padding:24px}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;background:var(--card);padding:16px;border:1px solid #1b5e91;border-radius:22px;margin-bottom:18px}input,select{width:100%;padding:13px 14px;border-radius:14px;border:1px solid #225d88;background:#081e31;color:white}label{color:var(--muted);font-size:13px}.stats{margin:12px 0;color:#d7ecff}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.meal-card,.program-card,.panel,.result{background:linear-gradient(180deg,#102f4bcc,#091f34dd);border:1px solid #1d628f;border-radius:22px;padding:18px;box-shadow:0 8px 28px #0005}.meal-card h3{margin:0 0 10px;color:#fff}.badge{display:inline-block;background:#1b75bb;padding:6px 10px;border-radius:999px;margin:4px;font-size:12px}.macro{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.macro div{background:#06192a;border-radius:12px;text-align:center;padding:8px}.macro b{display:block;color:var(--gold);font-size:18px}.small{color:var(--muted);font-size:13px;line-height:1.7}.workouts-list{display:grid;gap:16px}.program-card summary{cursor:pointer;font-size:22px;font-weight:bold}.day{margin:12px 0;padding:12px;border-radius:14px;background:#071b2d}.day ul{columns:2}.calc,.admin{display:grid;grid-template-columns:minmax(280px,440px) 1fr;gap:18px}.panel{display:grid;gap:12px}.result h2{color:var(--gold)}.hidden{display:none!important}.danger{background:var(--danger)}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid #234760;padding:10px;text-align:right}.tableWrap{overflow:auto;max-height:520px}@media(max-width:760px){.choose,.calc,.admin{grid-template-columns:1fr}.brand h1{font-size:32px}.day ul{columns:1}}
.hero-mini{background:linear-gradient(135deg,rgba(39,255,197,.12),rgba(56,128,255,.10));border:1px solid rgba(255,255,255,.10);border-radius:24px;padding:22px;margin:16px 0}.hero-mini h2{margin:0 0 8px}.hero-mini p{margin:0;color:#b9c7d9}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.chips span,.badge{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:6px 10px;color:#dce8f6;font-size:13px}.compact-card .small{display:none}.small-btn{width:100%;margin-top:12px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:20px;z-index:99}.modal.hidden{display:none}.modal-card{position:relative;max-width:760px;width:min(760px,100%);max-height:86vh;overflow:auto;background:#071323;border:1px solid rgba(255,255,255,.13);border-radius:24px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.55)}.modal-close{position:absolute;left:16px;top:14px;border:0;background:rgba(255,255,255,.1);color:#fff;border-radius:12px;width:40px;height:40px;font-size:28px;cursor:pointer}.detail-macro{margin:18px 0}.program-card summary{display:flex;justify-content:space-between;align-items:center;gap:12px}.program-card summary small{color:#8fcfff;font-size:13px}.table-wrap{overflow:auto;border-radius:16px;border:1px solid rgba(255,255,255,.08);margin-top:12px}.exercise-table{width:100%;border-collapse:collapse;min-width:580px}.exercise-table th,.exercise-table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.08);text-align:right}.exercise-table th{color:#8fcfff;background:rgba(255,255,255,.05)}.video-link{display:inline-block;background:#16d6a3;color:#001a15!important;text-decoration:none;border-radius:999px;padding:7px 13px;font-weight:800}.empty{padding:30px;text-align:center;color:#c7d5e4}.day{background:rgba(255,255,255,.035);border-radius:18px;padding:16px;margin:12px 0}

.mode-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.tab{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#eaf7ff}.tab.active{background:linear-gradient(90deg,#16baf2,#16d6a3);color:#03131f}.source-note{background:rgba(243,182,61,.12);border:1px solid rgba(243,182,61,.28);border-radius:14px;padding:10px 12px;color:#ffe0a0}.program-card[open]{border-color:#2f9ee1}.exercise-table tr:hover td{background:rgba(255,255,255,.035)}

.hero-mini{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:22px;margin-bottom:18px;text-align:center}
.hero-mini h2{margin:0 0 8px;font-size:28px}.hero-mini p{margin:0;color:#cbd5e1}
.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;align-items:end}
.calc-grid label{display:flex;flex-direction:column;gap:8px;color:#e5e7eb;font-weight:700}.calc-grid input,.calc-grid select{width:100%;box-sizing:border-box}
.primary-btn{background:linear-gradient(135deg,#00d4ff,#0066ff);color:white;border:0;border-radius:16px;padding:15px 20px;font-weight:900;cursor:pointer;box-shadow:0 10px 30px rgba(0,102,255,.25)}
.warn{background:rgba(255,193,7,.12);border:1px solid rgba(255,193,7,.35);padding:18px;border-radius:18px;color:#fff;margin-top:18px}
.result h2{margin-top:24px}.result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:14px 0}.result-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:18px}.result-card small{display:block;color:#cbd5e1;margin-bottom:8px}.result-card b{display:block;font-size:30px;color:#fff}.result-card span{color:#93c5fd}.result-card.wide{margin-top:14px}.result-card h3{margin:0 0 12px}.result-card p{color:#e5e7eb}.macro{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.macro div{background:rgba(0,0,0,.18);border-radius:16px;padding:15px;text-align:center}.macro b{font-size:26px}.macro span{display:block;margin-top:5px;color:#cbd5e1}
.detail-section{margin-top:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px}.detail-section h3{margin:0 0 12px;color:#fff}.ingredient-list,.steps-list{margin:0;padding:0 22px 0 0;line-height:2.15;color:#eef7ff}.ingredient-list li,.steps-list li{border-bottom:1px solid rgba(255,255,255,.08);padding:6px 0}.ingredient-list li:last-child,.steps-list li:last-child{border-bottom:0}.modal-card h2{padding-left:54px}.card-head h3{line-height:1.6}.primary.small-btn{background:linear-gradient(90deg,#0f8bd2,#16d6a3)}

.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);background:linear-gradient(180deg,#102f4bcc,#091f34ee);border:1px solid #1d628f;border-radius:28px;padding:30px;box-shadow:0 20px 70px #0008;text-align:center}.login-card .logo{margin:0 auto 16px}.login-card h1{margin:8px 0;font-size:34px}.login-card p{color:var(--muted);line-height:1.8}.login-form{display:grid;gap:14px;margin-top:22px;text-align:right}.login-form label{display:grid;gap:8px;color:#eaf7ff;font-weight:bold}.login-form input{font-size:16px}.login-msg{min-height:24px;color:#ffb4b4;text-align:center;font-weight:bold}.top button{padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14)}
