:root{
  --tbk-navy:#0f2f57;
  --tbk-blue:#1557a6;
  --tbk-blue-2:#eaf3ff;
  --tbk-yellow:#f5c84c;
  --tbk-bg:#f5f8fc;
  --tbk-card:#ffffff;
  --tbk-text:#172033;
  --tbk-muted:#657089;
  --tbk-border:#dfe6ef;
  --tbk-success:#218c63;
  --tbk-danger:#b84141;
  --tbk-radius:18px;
  --tbk-shadow:0 12px 34px rgba(22,51,87,.09);
}

.tbk-app{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--tbk-text);background:var(--tbk-bg);min-height:100vh;line-height:1.55;}
.tbk-app *{box-sizing:border-box;}
.tbk-app button,.tbk-app input,.tbk-app select,.tbk-app textarea{font-family:inherit;}
.tbk-hero{background:linear-gradient(135deg,var(--tbk-navy),var(--tbk-blue));color:#fff;padding:34px max(24px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;gap:24px;align-items:flex-end;}
.tbk-hero h1{font-size:clamp(28px,4vw,48px);margin:4px 0 8px;line-height:1.08;color:#fff;}
.tbk-hero p{margin:0;max-width:720px;color:rgba(255,255,255,.86);font-size:17px;}
.tbk-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;color:var(--tbk-yellow);}
.tbk-hero-actions{display:flex;gap:10px;flex-wrap:wrap;}
.tbk-tabs{position:sticky;top:0;z-index:40;display:flex;gap:8px;overflow-x:auto;padding:12px max(24px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid var(--tbk-border);backdrop-filter:blur(10px);}
.admin-bar .tbk-tabs{top:32px;}
.tbk-tab{border:0;background:#eef3f9;color:var(--tbk-muted);padding:11px 16px;border-radius:999px;font-weight:800;white-space:nowrap;cursor:pointer;}
.tbk-tab.active{background:var(--tbk-navy);color:#fff;}
.tbk-main{max-width:1180px;margin:0 auto;padding:30px 24px 54px;}
.tbk-panel{display:none;}
.tbk-panel.active{display:block;animation:tbkFade .22s ease;}
@keyframes tbkFade{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:none}}
.tbk-section-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:20px;}
.tbk-section-heading h2{font-size:clamp(25px,3vw,36px);margin:3px 0 0;line-height:1.15;color:var(--tbk-navy);}
.tbk-section-heading p{max-width:560px;margin:0;color:var(--tbk-muted);}
.tbk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;}
.tbk-stat,.tbk-card{background:var(--tbk-card);border:1px solid var(--tbk-border);border-radius:var(--tbk-radius);box-shadow:var(--tbk-shadow);}
.tbk-stat{padding:20px;}
.tbk-stat strong{display:block;font-size:34px;color:var(--tbk-blue);line-height:1;}
.tbk-stat span{display:block;color:var(--tbk-muted);font-weight:700;margin-top:8px;}
.tbk-card{padding:24px;}
.tbk-card h3{margin:6px 0 8px;color:var(--tbk-navy);font-size:21px;}
.tbk-card p{color:var(--tbk-muted);}
.tbk-card-label{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--tbk-blue);}
.tbk-grid{display:grid;gap:18px;}
.tbk-grid-2{grid-template-columns:repeat(2,1fr);}
.tbk-grid-planner{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:start;}
.tbk-grid-focus{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);align-items:start;}
.tbk-btn{border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer;transition:.18s ease;}
.tbk-btn:hover{transform:translateY(-1px);}
.tbk-btn:focus-visible,.tbk-tab:focus-visible,.tbk-filter:focus-visible,.tbk-preset:focus-visible,.tbk-technique-toggle:focus-visible{outline:3px solid rgba(21,87,166,.24);outline-offset:2px;}
.tbk-btn-primary{background:var(--tbk-blue);color:#fff;}
.tbk-btn-secondary{background:var(--tbk-blue-2);color:var(--tbk-blue);}
.tbk-btn-light{background:#fff;color:var(--tbk-navy);}
.tbk-btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);}
.tbk-form label,.tbk-recall-form label{display:block;font-weight:800;color:var(--tbk-navy);margin-bottom:15px;}
.tbk-form input,.tbk-form select,.tbk-recall-form input,.tbk-recall-form textarea,.tbk-focus-input{width:100%;margin-top:7px;border:1px solid var(--tbk-border);background:#fff;border-radius:12px;padding:12px 13px;font:inherit;color:var(--tbk-text);outline:none;}
.tbk-form input:focus,.tbk-form select:focus,.tbk-recall-form input:focus,.tbk-recall-form textarea:focus,.tbk-focus-input:focus{border-color:var(--tbk-blue);box-shadow:0 0 0 3px rgba(21,87,166,.1);}

.tbk-method-selector{margin-bottom:18px;display:flex;justify-content:space-between;gap:24px;align-items:center;}
.tbk-method-selector p{margin:4px 0 0;}
.tbk-filter-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.tbk-filter{border:1px solid var(--tbk-border);background:#fff;color:var(--tbk-muted);border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer;}
.tbk-filter.active{background:var(--tbk-navy);border-color:var(--tbk-navy);color:#fff;}
.tbk-techniques{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.tbk-technique{background:#fff;border:1px solid var(--tbk-border);border-radius:16px;padding:20px;box-shadow:0 8px 24px rgba(22,51,87,.06);display:flex;flex-direction:column;}
.tbk-technique.tbk-filtered-out{display:none;}
.tbk-technique-head{display:flex;gap:12px;align-items:flex-start;}
.tbk-technique-num{width:36px;height:36px;border-radius:10px;background:var(--tbk-blue-2);display:grid;place-items:center;font-weight:900;color:var(--tbk-blue);flex:0 0 auto;}
.tbk-technique h3{margin:0 0 4px;color:var(--tbk-navy);font-size:19px;}
.tbk-technique-summary{margin:8px 0 10px;color:var(--tbk-muted);}
.tbk-technique-tags{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px;}
.tbk-tag{display:inline-flex;align-items:center;border-radius:999px;background:#f1f5fa;color:#53627a;font-size:11px;font-weight:800;padding:5px 8px;}
.tbk-tip{background:#fff8dd;border-left:4px solid var(--tbk-yellow);padding:10px 12px;border-radius:8px;font-size:14px;color:#5a4a18;}
.tbk-technique-toggle{margin-top:14px;border:0;background:transparent;color:var(--tbk-blue);padding:4px 0;font-weight:900;cursor:pointer;text-align:left;}
.tbk-technique-detail{display:none;margin-top:14px;border-top:1px solid var(--tbk-border);padding-top:14px;}
.tbk-technique.expanded .tbk-technique-detail{display:block;animation:tbkFade .18s ease;}
.tbk-detail-block{margin-bottom:14px;}
.tbk-detail-block:last-child{margin-bottom:0;}
.tbk-detail-block h4{margin:0 0 6px;color:var(--tbk-navy);font-size:15px;}
.tbk-detail-block p{margin:0;color:var(--tbk-muted);}
.tbk-detail-block ol,.tbk-detail-block ul{margin:7px 0 0;padding-left:20px;color:var(--tbk-muted);}
.tbk-detail-block li{margin-bottom:5px;}
.tbk-example{background:var(--tbk-blue-2);border-radius:10px;padding:11px 12px;color:#25496f;}

.tbk-inline-input{display:flex;gap:10px;align-items:flex-end;}
.tbk-inline-input input{margin-top:7px;}
.tbk-recall-output,.tbk-plan-output{margin-top:18px;}
.tbk-recall-card{background:#fff;border:1px solid var(--tbk-border);border-radius:16px;margin-bottom:12px;overflow:hidden;box-shadow:0 8px 24px rgba(22,51,87,.05);}
.tbk-recall-question{padding:16px 18px;font-weight:800;color:var(--tbk-navy);background:#fbfcfe;}
.tbk-recall-answer{padding:0 18px 18px;}
.tbk-recall-answer textarea{min-height:100px;resize:vertical;}
.tbk-answer-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.tbk-hidden{display:none!important;}
.tbk-plan-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px;}
.tbk-plan-list{display:grid;gap:10px;}
.tbk-plan-day{background:#fff;border:1px solid var(--tbk-border);border-radius:14px;padding:14px 16px;display:grid;grid-template-columns:125px 1fr auto;gap:14px;align-items:center;}
.tbk-plan-day strong{color:var(--tbk-navy);}
.tbk-plan-day .tbk-stage{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:var(--tbk-blue-2);color:var(--tbk-blue);font-size:12px;font-weight:900;}
.tbk-planner-info ol,.tbk-focus-guide ol{padding-left:20px;color:var(--tbk-muted);}
.tbk-planner-info li,.tbk-focus-guide li{margin-bottom:9px;}
.tbk-recent-card{margin-top:18px;}
.tbk-empty{color:var(--tbk-muted);padding:8px 0;}
.tbk-activity{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--tbk-border);}
.tbk-activity:last-child{border-bottom:0;}
.tbk-activity small{color:var(--tbk-muted);}

.tbk-focus-label{display:block;font-weight:800;color:var(--tbk-navy);margin-top:16px;}
.tbk-preset-row{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 8px;}
.tbk-preset{border:1px solid var(--tbk-border);background:#fff;color:var(--tbk-muted);border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer;}
.tbk-preset.active{background:var(--tbk-blue-2);border-color:#bfd7f5;color:var(--tbk-blue);}
.tbk-timer{font-variant-numeric:tabular-nums;font-size:clamp(56px,9vw,92px);font-weight:900;letter-spacing:-.04em;line-height:1;text-align:center;color:var(--tbk-navy);padding:24px 0 18px;}
.tbk-timer-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;}
.tbk-progress-track{height:8px;border-radius:999px;background:#e8edf4;overflow:hidden;margin-top:20px;}
.tbk-progress-track span{display:block;height:100%;width:0;background:var(--tbk-blue);transition:width .25s linear;}
.tbk-focus-guide h3{font-size:24px;}

.tbk-toast{position:fixed;right:20px;bottom:20px;background:var(--tbk-navy);color:#fff;padding:12px 16px;border-radius:12px;box-shadow:var(--tbk-shadow);z-index:99999;}

@media (max-width:900px){
  .tbk-hero{align-items:flex-start;flex-direction:column;}
  .tbk-stats{grid-template-columns:repeat(2,1fr);}
  .tbk-grid-2,.tbk-grid-planner,.tbk-grid-focus,.tbk-techniques{grid-template-columns:1fr;}
  .tbk-section-heading{align-items:flex-start;flex-direction:column;}
  .tbk-method-selector{align-items:flex-start;flex-direction:column;}
  .tbk-filter-buttons{justify-content:flex-start;}
}
@media (max-width:782px){.admin-bar .tbk-tabs{top:46px;}}
@media (max-width:640px){
  .tbk-main{padding:22px 14px 40px;}
  .tbk-hero{padding:26px 16px;}
  .tbk-tabs{padding:10px 14px;}
  .tbk-stats{grid-template-columns:1fr 1fr;gap:10px;}
  .tbk-stat{padding:15px;}
  .tbk-stat strong{font-size:28px;}
  .tbk-card{padding:18px;}
  .tbk-inline-input{flex-direction:column;align-items:stretch;}
  .tbk-plan-day{grid-template-columns:1fr;gap:6px;}
}
@media (prefers-reduced-motion:reduce){
  .tbk-panel.active,.tbk-technique.expanded .tbk-technique-detail{animation:none;}
  .tbk-btn{transition:none;}
  .tbk-progress-track span{transition:none;}
}
