.landing .wrap{max-width:1160px;margin:0 auto;padding:0 32px}.landing .top{align-items:center;gap:12px;height:68px;display:flex}.landing .logo{letter-spacing:.04em;align-items:center;gap:10px;font-size:20px;font-weight:700;text-decoration:none;display:flex}.landing .logo .mark{background:var(--primary);color:#1a1206;border-radius:8px;place-items:center;width:30px;height:30px;font-size:16px;display:grid}.landing .top .sp{flex:1}.landing a.btn{align-items:center;text-decoration:none;display:inline-flex}.landing .btn.lg{height:46px;padding:0 22px;font-size:16px}.landing .hero{grid-template-columns:minmax(0,1fr) minmax(0,520px);align-items:center;gap:56px;padding:56px 0 72px;display:grid}.landing .hero h1{letter-spacing:.01em;text-wrap:balance;margin:0;font-size:52px;line-height:1.04}.landing .hero h1 em{color:var(--primary);font-style:normal}.landing .hero p{color:var(--text-2);max-width:34em;margin:20px 0 0;font-size:18px;line-height:1.5}.landing .cta{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.landing .fine{color:var(--text-3);margin-top:14px;font-size:13px}.landing .shot{background:var(--surface);border-radius:var(--radius-md);font-variant-numeric:tabular-nums;padding:18px 20px 14px}.landing .shot .ttl{align-items:baseline;gap:10px;display:flex}.landing .shot .ttl b{font-size:18px}.landing .shot .ttl span{color:var(--text-3);font-size:13px}.landing .shot .cm{color:var(--text-2);margin-top:2px;font-size:14px}.landing .shot table{border-collapse:collapse;width:100%;margin-top:12px}.landing .shot th{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:0 6px 6px 0;font-size:11px;font-weight:400}.landing .shot td{border-top:1px solid var(--divider-strong);padding:8px 6px 8px 0}.landing .shot td.m{color:var(--text-3)}.landing .shot .phone{color:var(--text-3);justify-content:space-between;margin-top:14px;font-size:13px;display:flex}.landing .shot .phone b{color:var(--success);font-weight:400}.landing .features{border-top:1px solid var(--divider-strong);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.landing .feature{padding:28px 28px 32px 0}.landing .feature+.feature{border-left:1px solid var(--divider);padding-left:28px}.landing .feature .k{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.landing .feature h2{margin:8px 0 10px;font-size:22px}.landing .feature ul{color:var(--text-2);margin:0;padding-left:18px;line-height:1.6}.landing .import{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:center;gap:16px;margin:64px 0 0;display:grid}.landing .import h2{grid-column:1/-1;margin:0 0 4px;font-size:26px}.landing .import .lead{color:var(--text-2);grid-column:1/-1;margin:0 0 12px}.landing .note{border:1px solid var(--divider-strong);border-radius:var(--radius-md);white-space:pre-wrap;color:var(--text-2);background:#1a1a18;padding:16px 18px;font-size:15px;line-height:1.6}.landing .arrow{text-align:center;color:var(--text-3);font-size:24px}.landing .parsed{background:var(--surface);border-radius:var(--radius-md);font-variant-numeric:tabular-nums;padding:14px 18px}.landing .parsed div{border-bottom:1px solid var(--divider);justify-content:space-between;padding:6px 0;display:flex}.landing .parsed div:last-child{border-bottom:0}.landing .parsed span:last-child{color:var(--text-2)}.landing .q{color:var(--text-3);grid-column:3;font-size:13px}.landing .q b{color:var(--text);font-weight:400}.landing .bottom{border-top:1px solid var(--divider);flex-wrap:wrap;align-items:center;gap:24px;margin:80px 0 0;padding:40px 0;display:flex}.landing .bottom h2{flex:1;min-width:260px;margin:0;font-size:26px}.landing footer{color:var(--text-3);flex-wrap:wrap;gap:20px;padding:20px 0 40px;font-size:13px;display:flex}.landing footer a{color:var(--text-2)}@media (width<=900px){.landing .hero{grid-template-columns:1fr;gap:36px;padding-top:28px}.landing .hero h1{font-size:38px}.landing .features{grid-template-columns:1fr}.landing .feature,.landing .feature+.feature{border-left:0;border-bottom:1px solid var(--divider);padding:22px 0}.landing .import{grid-template-columns:1fr}.landing .arrow{transform:rotate(90deg)}.landing .q{grid-column:1}}@media (width<=520px){.landing .wrap{padding:0 16px}.landing .top .login{display:none}}.editor-screen{flex-direction:column;flex:1;min-height:0;display:flex}.editor-screen .settings{border-top:1px solid var(--divider);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 24px;display:flex}.editor-screen .toggle{border-radius:var(--radius-sm);height:30px;color:var(--text-2);align-items:center;gap:7px;padding:0 10px;display:inline-flex}.editor-screen .toggle .box{background:var(--surface-pressed);border-radius:8px;width:26px;height:16px;transition:background .12s;position:relative}.editor-screen .toggle .box:after{content:"";background:var(--text-3);border-radius:50%;width:12px;height:12px;transition:transform .12s;position:absolute;top:2px;left:2px}.editor-screen .toggle.on{color:var(--text)}.editor-screen .toggle.on .box{background:var(--primary)}.editor-screen .toggle.on .box:after{background:#1a1206;transform:translate(10px)}.editor-screen .toggle:hover{background:var(--surface)}.editor-screen .settings .hint{margin-left:8px;font-size:13px}.editor-screen .settings .right{gap:6px;margin-left:auto;display:flex}.editor-screen .layout{border-top:1px solid var(--divider);flex:1;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid}.editor-screen .layout.with-panel{grid-template-columns:220px minmax(0,1fr) 380px}.editor-screen .tree{border-right:1px solid var(--divider);padding:8px 0 40px;overflow:auto}.editor-screen .tree .wk{justify-content:space-between;gap:8px;padding:12px 16px 4px;font-weight:700;display:flex}.editor-screen .tree .wk span{color:var(--text-3);white-space:nowrap;font-size:13px;font-weight:400}.editor-screen .tree button{text-align:left;width:100%;color:var(--text-2);gap:8px;padding:6px 16px;display:flex}.editor-screen .tree button:hover{color:var(--text)}.editor-screen .tree button.on{background:var(--surface-action);color:var(--text)}.editor-screen .tree button .d{width:22px;color:var(--text-3);text-transform:uppercase;flex:none;font-size:13px;line-height:20px}.editor-screen .main{padding:4px 28px 120px;overflow:auto}.editor-screen .workout-head{align-items:flex-end;gap:16px;padding-top:14px;display:flex}.editor-screen .workout-head .titles{flex:1;min-width:0}.editor-screen .workout-head input.title{background:0 0;border:0;width:100%;padding:0;font-size:24px;font-weight:700}.editor-screen .workout-head input.title:focus{box-shadow:0 1px 0 var(--input-focus);outline:none}.editor-screen .workout-head .sub{color:var(--text-2)}.editor-screen .block{margin-top:26px}.editor-screen .block.group{border-left:2px solid var(--divider-strong);margin-left:-18px;padding-left:16px}.editor-screen .group-label{color:var(--text-2);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:10px;font-size:13px;display:flex}.editor-screen .group-label button{text-transform:none;letter-spacing:0;color:var(--text-3)}.editor-screen .group-label button:hover{color:var(--text)}.editor-screen .exercise{padding-top:4px;position:relative}.editor-screen .block.group .exercise+.exercise{margin-top:22px}.editor-screen .exercise.unsent{box-shadow:none}.editor-screen .exercise.unsent:before{content:"";background:var(--primary);width:3px;position:absolute;top:6px;bottom:0;left:-10px}.editor-screen .exercise.drop-before:after{content:"";background:var(--primary);height:2px;position:absolute;top:-14px;left:0;right:0}.editor-screen .ex-head{align-items:baseline;gap:12px;display:flex}.editor-screen .ex-num{min-width:26px;color:var(--text-3);font-variant-numeric:tabular-nums;font-weight:700}.editor-screen .ex-name{text-align:left;font-size:19px;font-weight:700}.editor-screen .ex-name:hover{color:var(--primary)}.editor-screen .ex-meta{color:var(--text-3);white-space:nowrap;font-size:13px}.editor-screen .ex-actions{gap:2px;margin-left:auto;display:flex}.editor-screen .icon-btn{width:30px;height:30px;color:var(--text-3);border-radius:6px}.editor-screen .icon-btn:hover{color:var(--text);background:var(--surface-action)}.editor-screen .ex-comment{width:calc(100% - 38px);color:var(--text-2);background:0 0;border:0;margin:2px 0 0 38px;padding:3px 0;display:block}.editor-screen .ex-comment:focus{color:var(--text);box-shadow:0 1px 0 var(--input-focus);outline:none}.editor-screen .ex-free{color:var(--text-3);margin:8px 0 0 38px;font-size:13px}.editor-screen table.sets{border-collapse:collapse;font-variant-numeric:tabular-nums;width:calc(100% - 38px);margin:8px 0 0 38px}.editor-screen .sets th{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;text-align:left;white-space:nowrap;padding:0 8px 4px;font-size:12px;font-weight:400}.editor-screen .sets th select.col-all{appearance:none;color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.editor-screen .sets th select.col-all:hover{color:var(--text)}.editor-screen .sets td{border-top:1px solid var(--divider);height:38px;padding:0}.editor-screen .sets td.idx{width:32px;color:var(--text-3);padding-left:8px}.editor-screen .sets input,.editor-screen .sets select{font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;border-radius:4px;width:100%;height:36px;padding:0 8px}.editor-screen .sets select{appearance:none;cursor:pointer}.editor-screen .sets input::placeholder{color:var(--text-4)}.editor-screen .sets input:hover,.editor-screen .sets select:hover{background:var(--surface)}.editor-screen .sets input:focus,.editor-screen .sets select:focus{border-color:var(--input-focus);background:var(--surface);outline:none}.editor-screen .sets input.derived{color:var(--text-2)}.editor-screen .sets .c-type{width:112px}.editor-screen .sets .c-num{width:92px}.editor-screen .sets .c-sel{width:104px}.editor-screen .sets .c-note{min-width:140px}.editor-screen .sets .c-act{white-space:nowrap;text-align:right;width:64px}.editor-screen .sets .c-act button{width:28px;height:28px;color:var(--text-4);visibility:hidden;border-radius:6px}.editor-screen .sets tr:hover .c-act button,.editor-screen .sets tr:focus-within .c-act button{visibility:visible}.editor-screen .sets .c-act button:hover{color:var(--text);background:var(--surface-action)}.editor-screen .sets .c-act button.del:hover{color:var(--coral)}.editor-screen .add-set{margin:2px 0 0 30px}.editor-screen .add-exercise{align-items:center;gap:8px;margin-top:30px;display:flex}.editor-screen .add-exercise.drop-here{box-shadow:0 -2px 0 var(--primary)}.editor-screen .empty-workout{color:var(--text-3);margin-top:30px}.editor-screen .popmenu{z-index:30;background:var(--surface-action);border-radius:var(--radius-sm);min-width:240px;padding:4px;position:absolute;box-shadow:0 8px 24px #00000080}.editor-screen .popmenu button{text-align:left;border-radius:6px;width:100%;padding:7px 10px;display:block}.editor-screen .popmenu button:hover{background:var(--selected)}.editor-screen .popmenu button:disabled{color:var(--text-4);cursor:default;background:0 0}.editor-screen .popmenu button.danger{color:var(--coral)}.editor-screen .popmenu hr{border:0;border-top:1px solid var(--divider-strong);margin:4px 0}.editor-screen .panel{border-left:1px solid var(--divider);background:var(--bg);flex-direction:column;min-height:0;display:flex}.editor-screen .panel-tabs{border-bottom:1px solid var(--divider);align-items:center;gap:4px;padding:10px 12px 8px 16px;display:flex}.editor-screen .panel-tabs .tab{border-radius:var(--radius-sm);color:var(--text-2);padding:6px 10px}.editor-screen .panel-tabs .tab.on{background:var(--surface-action);color:var(--text)}.editor-screen .panel-tabs .close{margin-left:auto}.editor-screen .panel-body{flex:1;min-height:0;padding:12px 16px 40px;overflow:auto}.editor-screen .replace-note{background:var(--primary-surface);border-radius:var(--radius-sm);align-items:baseline;gap:8px;margin-bottom:10px;padding:8px 10px;display:flex}.editor-screen .replace-note button{color:var(--text-2);margin-left:auto}.editor-screen .filters{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.editor-screen .filters select{flex:1;min-width:0}.editor-screen .lib-list{margin-top:10px}.editor-screen .lib-item{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:8px 6px 8px 8px;display:flex}.editor-screen .lib-item:hover{background:var(--surface)}.editor-screen .lib-item .txt{flex:1;min-width:0}.editor-screen .lib-item .nm{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.editor-screen .lib-item .mt{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.editor-screen .lib-item .own{color:var(--text-3);border:1px solid var(--divider-strong);border-radius:4px;padding:0 5px;font-size:12px}.editor-screen .lib-item .add{visibility:hidden;background:var(--surface-action);border-radius:6px;flex:none;height:28px;padding:0 10px}.editor-screen .lib-item:hover .add,.editor-screen .lib-item:focus-within .add{visibility:visible}.editor-screen .lib-item .add:hover{background:var(--primary);color:#1a1206}.editor-screen .lib-count{color:var(--text-3);margin-top:10px;font-size:13px}.editor-screen .back{color:var(--text-2)}.editor-screen .back:hover{color:var(--text)}.editor-screen .card h2{margin:10px 0 2px;font-size:21px;line-height:26px}.editor-screen .card .src{color:var(--text-3);font-size:13px}.editor-screen .card dl{grid-template-columns:110px 1fr;gap:8px 12px;margin:16px 0 0;display:grid}.editor-screen .card dt{color:var(--text-3)}.editor-screen .card dd{margin:0}.editor-screen .chip{background:var(--surface-action);border-radius:999px;margin:0 4px 4px 0;padding:2px 8px;font-size:13px;display:inline-block}.editor-screen .chip.secondary{border:1px solid var(--divider-strong);color:var(--text-2);background:0 0}.editor-screen .card .section{border-top:1px solid var(--divider);margin-top:20px;padding-top:12px}.editor-screen .card .section h3{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:400}.editor-screen .strength{gap:24px;display:flex}.editor-screen .strength .v{font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.editor-screen .strength .k{color:var(--text-3);font-size:13px}.editor-screen .hist div{font-variant-numeric:tabular-nums;grid-template-columns:64px 1fr auto;gap:8px;padding:5px 0;display:grid}.editor-screen .hist .dt,.editor-screen .hist .rpe{color:var(--text-3)}.editor-screen .card .actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.editor-screen .card .note-system{color:var(--text-3);margin-top:8px;font-size:13px}.editor-screen .form label{color:var(--text-3);margin-top:14px;font-size:13px;display:block}.editor-screen .form .input,.editor-screen .form textarea{width:100%;margin-top:4px}.editor-screen .form textarea{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--bg);resize:vertical;min-height:70px;padding:8px 10px}.editor-screen .form label .radio-list,.editor-screen .form label .chips{font-size:15px}.editor-screen .radio-list button{text-align:left;width:100%;color:var(--text-2);border-radius:6px;padding:6px 10px;display:block}.editor-screen .radio-list button.on{background:var(--surface-action);color:var(--text)}.editor-screen .chips{margin-top:6px}.editor-screen .chips button{border:1px solid var(--divider-strong);color:var(--text-2);border-radius:999px;margin:0 4px 6px 0;padding:3px 9px;font-size:13px}.editor-screen .chips button.on{background:var(--text);color:var(--bg);border-color:var(--text)}.editor-screen .chips button.on2{border-color:var(--text-2);color:var(--text)}.editor-screen .form .actions{gap:8px;margin-top:20px;display:flex}.editor-screen .bulk label{color:var(--text-3);margin-top:14px;font-size:13px;display:block}.editor-screen .bulk select,.editor-screen .bulk input{width:100%;margin-top:4px}.editor-screen .bulk .preview{color:var(--text-2);margin-top:14px}.editor-screen .bulk .apply{width:100%;margin-top:12px}.editor-screen .lib-item.dragging{opacity:.4}.editor-screen .program-head{padding-top:8px}.editor-screen .program-name{background:0 0;border:0;width:min(640px,100%);padding:0;font-size:26px;font-weight:700;line-height:30px}.editor-screen .program-name:focus{box-shadow:0 1px 0 var(--input-focus);outline:none}.editor-screen .status-select{color:var(--text-2);cursor:pointer;background:0 0;border:0;padding:0}.editor-screen .tree-item{align-items:center;display:flex}.editor-screen .tree-item>button:first-child{flex:1}.editor-screen .tree-item.on>button:first-child{background:var(--surface-action);color:var(--text)}.editor-screen .tree-item.unsent>button:first-child{box-shadow:inset 3px 0 0 var(--primary)}.editor-screen .tree-item.drop-day{background:var(--primary-surface)}.editor-screen .tree .tree-remove{width:32px;color:var(--text-4);justify-content:center;padding:6px 0}.editor-screen .tree .tree-remove:hover{color:var(--coral)}.editor-screen .tree .tree-add{color:var(--text-3);padding:4px 16px 4px 46px;font-size:13px}.editor-screen .tree .tree-add.week{margin-top:14px;padding-left:16px}.editor-screen .grip{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.editor-screen .grip:active{cursor:grabbing}.editor-screen .sets tr.dragging,.editor-screen .block.dragging{opacity:.5;z-index:5;position:relative}.editor-screen .block.drop-target{box-shadow:0 -2px 0 var(--primary)}.editor-screen .drag-chip{border-radius:var(--radius-sm);background:var(--surface-action);white-space:nowrap;padding:8px 12px;display:inline-block;box-shadow:0 8px 24px #00000080}.editor-screen .hist-entry{margin-bottom:10px}.editor-screen .hist-date{color:var(--text-2);font-size:13px}.editor-screen .hist-sets{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.editor-screen .hist-sets td{border-top:1px solid var(--divider);padding:4px 6px 4px 0}.editor-screen .hist-sets td.n,.editor-screen .hist-sets td.rpe{color:var(--text-3);width:24px}.editor-screen .hist-sets td.rpe{text-align:right;width:auto}.editor-screen .warn-line{color:var(--warning);margin-top:10px}.editor-screen .error-line{color:var(--coral);margin-top:10px}.editor-screen .sets input:disabled,.editor-screen .sets select:disabled{cursor:default;opacity:1;color:var(--text)}.editor-screen .sets input.derived:disabled{color:var(--text-4)}.programs-screen .prog-meta{color:var(--text-2);flex-wrap:wrap;gap:18px;margin-top:4px;display:flex}.programs-screen .prog-meta span{white-space:nowrap}.programs-screen .from-coach{color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-size:13px}.programs-screen .row-actions{gap:2px;display:flex}.programs-screen .new-menu{position:relative}.programs-screen .popmenu{z-index:30;background:var(--surface-action);border-radius:var(--radius-sm);min-width:280px;padding:4px;position:absolute;top:40px;right:0;box-shadow:0 8px 24px #00000080}.programs-screen .popmenu a,.programs-screen .popmenu button{text-align:left;border-radius:6px;width:100%;padding:8px 10px;text-decoration:none;display:block}.programs-screen .popmenu a:hover,.programs-screen .popmenu button:hover{background:var(--selected)}.programs-screen .popmenu .d{color:var(--text-3);font-size:13px;display:block}.programs-screen .active-card{background:var(--surface);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;margin-top:22px;padding:20px 22px;display:grid}.programs-screen .active-card .label{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.programs-screen .active-card h2{margin:6px 0 0;font-size:24px}.programs-screen .weeks-strip{gap:4px;margin-top:14px;display:flex}.programs-screen .weeks-strip span{background:var(--surface-pressed);border-radius:3px;width:46px;height:6px}.programs-screen .weeks-strip span.cur{background:var(--primary)}.programs-screen .next{color:var(--text-2);margin-top:12px}.programs-screen .next b{color:var(--text);font-weight:400}@media (width<=640px){.programs-screen .active-card{grid-template-columns:1fr}}@font-face{font-family:DIN;src:url(/fonts/DIN2014-Regular.ttf)format("truetype");font-weight:400 500;font-display:swap}@font-face{font-family:DIN;src:url(/fonts/DIN2014-Bold.ttf)format("truetype");font-weight:600 900;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141414;--surface:#1c1c1c;--surface-action:#262626;--surface-pressed:#2e2e2e;--selected:#303030;--primary:#e09a2d;--primary-surface:#e09a2d1f;--coral:#c87575;--success:#3fbfa2;--warning:#c3a56a;--text:#f2f2ef;--text-2:#9c9c98;--text-3:#6c6c68;--text-4:#4a4a48;--divider:#2a2a2a;--divider-strong:#3a3a3a;--input-border:#343434;--input-focus:#8c8c88;--set-warmup:#8f8a80;--set-working:#f2f2ef;--set-top:#e09a2d;--set-backoff:#7f95b5;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;font-synthesis:none;font-family:DIN,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font-size:15px;line-height:1.35}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit}:focus-visible{outline:2px solid var(--input-focus);outline-offset:2px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-2)}.topbar{border-bottom:1px solid var(--divider);align-items:center;gap:28px;height:52px;padding:0 24px;display:flex}.brand{letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:700}.variant-nav{gap:4px;display:flex;overflow-x:auto}.variant-nav a{border-radius:var(--radius-sm);color:var(--text-2);white-space:nowrap;padding:6px 10px;text-decoration:none}.variant-nav a:hover{color:var(--text)}.variant-nav a.active{color:var(--text);background:var(--surface-action)}.topbar-right{margin-left:auto}.segmented{background:var(--surface);border-radius:var(--radius-sm);padding:2px;display:inline-flex}.segmented button{color:var(--text-2);border-radius:6px;padding:5px 10px}.segmented button.on{background:var(--surface-action);color:var(--text)}.athlete-bar{background:var(--surface);border-bottom:1px solid var(--divider);align-items:baseline;gap:16px;padding:8px 24px;display:flex}.athlete-bar .back{color:var(--text-2);text-decoration:none}.athlete-name{font-weight:700}.athlete-meta{color:var(--text-3);margin-left:auto}.program-head{align-items:flex-end;gap:24px;padding:18px 24px 14px;display:flex}.program-title h1{letter-spacing:.02em;margin:0;font-size:26px;line-height:30px}.program-meta{color:var(--text-2);margin-top:2px}.program-side{align-items:center;gap:16px;margin-left:auto;display:flex}.program-actions{align-items:center;gap:12px;display:flex}.status{color:var(--text)}.status.muted{color:var(--text-2)}.status.warn{color:var(--warning)}.net-toggle{color:var(--text-3);align-items:center;gap:6px;font-size:13px;display:inline-flex}.btn{border-radius:var(--radius-sm);background:var(--surface-action);height:34px;color:var(--text);white-space:nowrap;padding:0 14px}.btn:hover{background:var(--surface-pressed)}.btn.primary{background:var(--primary);color:#1a1206;font-weight:700}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{color:var(--text-2);background:0 0}.btn.ghost:hover{color:var(--text);background:var(--surface)}.btn:disabled{opacity:.45;cursor:default}.input{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--bg);height:34px;padding:0 10px}.input:focus{border-color:var(--input-focus);outline:none}.unsent{box-shadow:inset 3px 0 0 var(--primary)}.t-warmup{color:var(--set-warmup)}.t-working{color:var(--set-working)}.t-top{color:var(--set-top)}.t-backoff{color:var(--set-backoff)}.suggest{z-index:30;background:var(--surface-action);border-radius:var(--radius-sm);min-width:280px;padding:4px;position:absolute;box-shadow:0 8px 24px #00000080}.suggest button{text-align:left;border-radius:6px;width:100%;padding:7px 10px;display:block}.suggest button.on,.suggest button:hover{background:var(--selected)}.suggest .new{color:var(--text-2)}.help-button{background:var(--surface-action);width:36px;height:36px;color:var(--text-2);z-index:40;border-radius:50%;font-weight:700;position:fixed;bottom:20px;right:20px}.shortcuts{background:var(--surface-action);border-radius:var(--radius-md);z-index:40;width:330px;padding:14px 16px;position:fixed;bottom:64px;right:20px;box-shadow:0 12px 32px #00000080}.shortcuts-title{margin-bottom:8px;font-weight:700}.shortcuts dl{grid-template-columns:auto 1fr;gap:6px 14px;margin:0;display:grid}.shortcuts dt{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.shortcuts dd{color:var(--text-2);margin:0}.toast{opacity:0;background:var(--surface-action);border-radius:var(--radius-sm);pointer-events:none;z-index:50;padding:10px 16px;transition:all .16s ease-out;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.legend{color:var(--text-3);flex-wrap:wrap;gap:14px;font-size:13px;display:flex}kbd{font:inherit;border:1px solid var(--divider-strong);color:var(--text-2);border-radius:4px;padding:1px 5px;font-size:12px}@media (width<=760px){.topbar{gap:12px;padding:0 16px}.brand{display:none}.program-head{flex-direction:column;align-items:flex-start;padding:14px 16px}.program-side{flex-wrap:wrap;margin-left:0}}.app{grid-template-columns:228px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.app.compact{grid-template-columns:64px minmax(0,1fr)}.app-main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:auto}.app.fixed .app-main{overflow:hidden}.sidebar{border-right:1px solid var(--divider);flex-direction:column;min-height:0;padding:14px 10px 12px;display:flex;overflow:auto}.brand-link{align-items:center;gap:10px;padding:4px 8px 16px;text-decoration:none;display:flex}.brand-link .mark{background:var(--primary);color:#1a1206;border-radius:7px;flex:none;place-items:center;width:28px;height:28px;font-weight:700;display:grid}.brand-link .word{letter-spacing:.04em;font-size:18px;font-weight:700}.nav{flex-direction:column;gap:2px;display:flex}.nav-item{border-radius:var(--radius-sm);height:38px;color:var(--text-2);align-items:center;gap:12px;padding:0 10px;text-decoration:none;display:flex}.nav-item:hover{color:var(--text);background:var(--surface)}.nav-item.on{color:var(--text);background:var(--surface-action)}.nav-item.on .ico{color:var(--primary)}.nav-item.back{color:var(--text-3)}.ico{flex:none;place-items:center;width:20px;height:20px;display:inline-grid}.nav-person{border-top:1px solid var(--divider);align-items:center;gap:10px;margin-top:4px;padding:12px 8px 8px;font-weight:700;display:flex}.avatar{background:var(--surface-pressed);width:28px;height:28px;color:var(--text);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.nav-foot{flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;display:flex}.nav-me{border-radius:var(--radius-sm);color:var(--text-2);align-items:center;gap:10px;padding:6px 8px;text-decoration:none;display:flex}.nav-me:hover{background:var(--surface);color:var(--text)}.nav-me .lbl{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.proto-toggle{color:var(--text-3);border:1px dashed var(--divider-strong);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.app.compact .lbl{display:none}.app.compact .nav-item,.app.compact .nav-me,.app.compact .brand-link{justify-content:center;padding-left:0;padding-right:0}.app.compact .nav-person,.app.compact .proto-toggle{justify-content:center}.crumbs{padding:12px 24px 0}.crumbs a{color:var(--text-2);text-decoration:none}.crumbs a:hover{color:var(--text)}a.btn{align-items:center;text-decoration:none;display:inline-flex}.page{width:100%;max-width:1180px;padding:28px 32px 80px}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.page-head .ph-text{flex:220px;min-width:0}.page-head h1{letter-spacing:.01em;text-wrap:balance;margin:0;font-size:28px;line-height:32px}.page-head .ph-sub{color:var(--text-2);margin-top:4px}.page-head .ph-actions{flex-wrap:wrap;gap:8px;display:flex}.section-title{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin:34px 0 10px;font-size:13px;font-weight:400}.rows{border-top:1px solid var(--divider-strong)}.row-link{border-bottom:1px solid var(--divider);color:inherit;align-items:center;gap:16px;padding:14px 6px;text-decoration:none;display:flex}a.row-link:hover,button.row-link:hover{background:var(--surface)}button.row-link{text-align:left;width:100%}.row-main{flex:1;min-width:0}.row-title{font-size:17px;font-weight:700}.row-sub{color:var(--text-2);margin-top:2px}.row-side{color:var(--text-3);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.pill{letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--divider-strong);color:var(--text-2);vertical-align:2px;border-radius:4px;margin-left:8px;padding:2px 7px;font-size:12px;font-weight:400;display:inline-block}.pill.active{border-color:var(--primary);color:var(--primary)}.dot{background:var(--primary);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.empty{color:var(--text-3);padding:28px 0}.tabs{border-bottom:1px solid var(--divider);gap:4px;margin-top:18px;display:flex}.tabs button,.tabs a{color:var(--text-2);border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 12px;text-decoration:none}.tabs .on{color:var(--text);border-bottom-color:var(--primary)}.field{color:var(--text-3);margin-top:14px;font-size:13px;display:block}.field .input,.field select,.field textarea{width:100%;margin-top:4px}textarea.input{resize:vertical;height:auto;min-height:90px;padding:8px 10px}dialog.modal{background:var(--surface);color:var(--text);border-radius:var(--radius-md);border:0;width:min(520px,92vw);padding:22px}dialog.modal::backdrop{background:#0009}dialog.modal h2{margin:0 0 6px;font-size:20px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}@media (width<=860px){.app,.app.compact{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--divider);flex-direction:row;align-items:center;padding:6px 12px;overflow-x:auto}.brand-link{padding:0 8px 0 0}.nav{flex-direction:row}.sidebar .lbl,.nav-person,.proto-toggle{display:none}.nav-foot{margin:0 0 0 auto;padding:0}.page{padding:20px 16px 60px}}
