:root{--mt-navy:#002B49;--mt-blue:#00558C;--mt-blue-600:#1A658F;--mt-accent:#48A9C5;--mt-bg:#F9FAFB;--mt-surface:#FFFFFF;--mt-border:#E5E7EB;--mt-text:#333333;--mt-text-sub:#6B7280;--mt-tonal:#E6EFF6;--mt-done-text:#047857;--mt-done-bg:#ECFDF5;--mt-done:#10B981;--mt-warn-text:#B45309;--mt-warn-bg:#FFFBEB;--mt-warn:#F59E0B;--mt-info-text:#1D4ED8;--mt-info-bg:#EFF6FF;--mt-info:#3B82F6;--mt-error-text:#B91C1C;--mt-error-bg:#FEF2F2;--mt-error:#EF4444;--mt-neutral-text:#4B5563;--mt-neutral-bg:#F3F4F6;--mt-muscle-main:#E8590C;--mt-muscle-sub:#F9C9A5;--mt-muscle-base:#D5DAE1;--mt-cal-partial:#CFE2EF;--mt-figure-far:#8FA3B6;--mt-r-badge:4px;--mt-r-button:6px;--mt-r-card:8px;--mt-r-sheet:12px;--navy:var(--mt-navy);--blue:var(--mt-blue);--blue2:var(--mt-blue-600);--accent:var(--mt-accent);--bg:var(--mt-bg);--card:var(--mt-surface);--muted:var(--mt-neutral-bg);--border:var(--mt-border);--border-strong:var(--mt-border);--tonal:var(--mt-tonal);--text:var(--mt-text);--sub:var(--mt-text-sub);--ph:#9CA3AF;--ok:var(--mt-done-text);--ok-bg:var(--mt-done-bg);--ok-raw:var(--mt-done);--info:var(--mt-info-text);--info-bg:var(--mt-info-bg);--info-raw:var(--mt-info);--wait:var(--mt-warn-text);--wait-bg:var(--mt-warn-bg);--wait-raw:var(--mt-warn);--err:var(--mt-error-text);--err-bg:var(--mt-error-bg);--err-raw:var(--mt-error);--hl:var(--mt-muscle-main);--hl-soft:var(--mt-muscle-sub);--body:var(--mt-muscle-base);--safe-b: env(safe-area-inset-bottom, 0px)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:Pretendard,Malgun Gothic,Apple SD Gothic Neo,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);word-break:keep-all;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:var(--blue);text-decoration:none}a:hover{color:var(--navy)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}img{max-width:100%;display:block}h1{font-size:24px;font-weight:800;color:var(--navy);letter-spacing:-.01em;line-height:1.3}h2{font-size:16px;font-weight:700;color:var(--navy)}h3{font-size:15px;font-weight:700;color:var(--navy)}.sub{color:var(--sub)}.caption{font-size:12px;color:var(--sub);line-height:1.5}.mono{font-family:Consolas,D2Coding,ui-monospace,monospace}.num{font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.neg{color:var(--err-raw)}.ok{color:var(--ok)}.strong{font-weight:700;color:var(--text)}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{display:flex;flex-direction:column;min-height:100vh}.appbar{height:52px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 12px 0 16px;gap:12px;position:sticky;top:0;z-index:20}.appbar .brand{display:flex;align-items:center;gap:10px;color:#fff}.appbar .grow{flex:1}.appbar .hint{display:none;align-items:center;gap:6px;font-size:13px;color:#c7d7e3}.appbar .sep{display:none;width:1px;height:20px;background:#ffffff40}.appbar .user{display:none;font-size:14px;color:#fff}.appbar .ghost{color:#fff;font-size:13px;padding:8px;border:1px solid rgba(255,255,255,.4);border-radius:6px;line-height:1;white-space:nowrap}.appbar .ghost:hover{background:#ffffff1a;color:#fff}.appbar .logout{display:none}.toptabs{display:flex;background:var(--card);border-bottom:1px solid var(--border);position:sticky;top:52px;z-index:19}.toptabs a{flex:1;height:44px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--sub);border-bottom:3px solid transparent}.toptabs a.active{color:var(--navy);font-weight:700;border-bottom-color:var(--blue)}.body{display:flex;flex:1;min-height:0}.side{display:none;width:220px;flex:none;background:var(--card);border-right:1px solid var(--border);padding:20px 12px;flex-direction:column;gap:4px;position:sticky;top:64px;height:calc(100vh - 64px)}.side a.nav{display:flex;align-items:center;gap:12px;height:48px;padding:0 14px;border-radius:6px;color:var(--text);font-size:15px;font-weight:500}.side a.nav svg{color:var(--sub)}.side a.nav:hover{background:var(--muted)}.side a.nav.active{background:var(--tonal);color:var(--navy);font-weight:700}.side a.nav.active svg{color:var(--navy)}.side .grow{flex:1}.side .getapp{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:13px;color:var(--blue);border:1px solid var(--border);border-radius:6px}.main{flex:1;min-width:0;padding:16px;padding-bottom:calc(32px + var(--safe-b))}.wrap{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.narrow{max-width:720px;margin:0 auto}@media(min-width:1024px){.appbar{height:64px;padding:0 24px;gap:16px}.appbar .hint,.appbar .sep,.appbar .user,.appbar .logout{display:flex}.appbar .getapp-m,.toptabs{display:none}.side{display:flex}.main{padding:28px 32px}.wrap{gap:20px}}.page-h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-h .left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:16px}.card.pad-sm{padding:12px}.card.flush{padding:0}.row{display:flex;align-items:center;gap:8px}.between{justify-content:space-between}.wrapr{flex-wrap:wrap}.top{align-items:flex-start}.stack{display:flex;flex-direction:column;gap:10px}.stack.lg{gap:16px}.grid2{display:grid;gap:10px;grid-template-columns:1fr}@media(min-width:640px){.grid2{grid-template-columns:1fr 1fr}}.btn{min-height:48px;padding:0 16px;border-radius:6px;border:1.5px solid var(--blue);background:var(--card);color:var(--blue);font-size:15px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;transition:background .12s ease-out}.btn:hover{background:#f2f7fb;color:var(--blue)}.btn:disabled{background:var(--border);color:var(--ph);border-color:var(--border);cursor:not-allowed}.btn.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.primary:hover{background:#004773;border-color:#004773}.btn.navy{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.navy:hover{background:var(--blue2);border-color:var(--blue2)}.btn.tonal{background:var(--tonal);color:var(--navy);border-color:var(--tonal)}.btn.tonal:hover{background:#d7e5f0;border-color:#d7e5f0}.btn.danger{color:var(--err);border-color:#f3b4b4}.btn.danger:hover{background:var(--err-bg)}.btn.dangerfill{background:var(--err);color:#fff;border-color:var(--err)}.btn.dangerfill:hover{background:#991b1b;border-color:#991b1b}.btn.dangerfill:disabled{background:var(--border);color:var(--ph);border-color:var(--border)}.btn.ok{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.text{border-color:transparent;background:transparent;color:var(--sub)}.btn.text:hover{background:var(--muted)}.btn.primary:disabled,.btn.navy:disabled,.btn.tonal:disabled,.btn.ok:disabled{background:var(--border);color:var(--ph);border-color:var(--border)}.btn.sm{min-height:40px;padding:0 12px;font-size:13px}.btn.md{min-height:44px;font-size:14px}.btn.lg{min-height:56px;font-size:16px;padding:0 22px}.btn.block{width:100%}.iconbtn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:var(--navy)}.iconbtn:hover{background:var(--muted)}.iconbtn:disabled{color:var(--ph);cursor:not-allowed}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:13px;font-weight:500}.input,select.input,textarea.input{height:48px;border:1px solid var(--border);border-radius:6px;padding:0 14px;background:var(--card);width:100%;font-size:15px}textarea.input{height:auto;min-height:88px;padding:10px 14px;resize:vertical;line-height:1.5}.input:focus{border:2px solid var(--blue);outline:none;padding:0 13px}.input.error{border:2px solid var(--err-raw);padding:0 13px}.err{font-size:12px;color:var(--err)}.money{position:relative}.money .input{padding-right:44px}.money span{position:absolute;right:14px;top:0;height:48px;display:flex;align-items:center;color:var(--sub);font-size:13px}.chip{height:36px;padding:0 12px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:13px;font-weight:500;display:inline-flex;align-items:center;white-space:nowrap;gap:4px}.chip.on{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:700}.chips{display:flex;gap:6px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:4px;font-size:12px;font-weight:700;white-space:nowrap;line-height:1.3}.b-ok{background:var(--ok-bg);color:var(--ok)}.b-info{background:var(--info-bg);color:var(--info)}.b-wait{background:var(--wait-bg);color:var(--wait)}.b-err{background:var(--err-bg);color:var(--err)}.b-navy{background:var(--navy);color:#fff}.b-muted{background:var(--muted);color:var(--mt-neutral-text)}.mt-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 7px 3px 6px;border-radius:4px;font-size:12px;font-weight:700;white-space:nowrap;line-height:1.3;flex:none}.mt-badge.t-neutral{background:var(--mt-neutral-bg);color:var(--mt-neutral-text)}.mt-badge.t-warn{background:var(--wait-bg);color:var(--wait)}.mt-badge.t-info{background:var(--info-bg);color:var(--info)}.mt-badge.t-done{background:var(--ok-bg);color:var(--ok)}.mt-badge.t-error{background:var(--err-bg);color:var(--err)}.mt-tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;background:#eaf2f8;color:var(--blue2);font-size:12px;font-weight:500;white-space:nowrap}.mt-bar{background:var(--border);overflow:hidden;flex:1;min-width:0}.mt-bar>div{height:100%}.seg{display:flex;gap:4px;padding:3px;border-radius:6px;background:#eef1f4;width:100%}.seg button{flex:1;height:38px;border-radius:4px;font-size:14px;font-weight:500;color:var(--sub);background:transparent}.seg button.on{background:var(--card);color:var(--navy);font-weight:700;box-shadow:0 0 0 1px var(--border)}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}th,td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;font-size:13px;vertical-align:middle}th{background:var(--muted);font-weight:600;color:var(--sub);font-size:12px;white-space:nowrap}tr:last-child td{border-bottom:none}td.r,th.r{text-align:right;white-space:nowrap}.tablewrap{overflow-x:auto;border-radius:8px}table.plain{border:0;border-radius:0}table.plain th{background:transparent;font-weight:400;padding:0 0 8px}table.plain td{padding:10px 0}table.plain th+th,table.plain td+td{padding-left:8px}.kpi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media(min-width:768px){.kpi{grid-template-columns:repeat(5,minmax(0,1fr))}}.kpi .card{display:flex;flex-direction:column;gap:4px;padding:12px}.kpi .l{font-size:12px;color:var(--sub)}.kpi .v{font-size:24px;font-weight:800;color:var(--navy);line-height:1.1;font-variant-numeric:tabular-nums}.kpi .v small{font-size:13px;font-weight:500;color:var(--sub)}.kv{display:flex;flex-direction:column}.kv-row{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}.kv-row:last-child{border-bottom:0}.kv .k{width:104px;flex:none;color:var(--sub)}.kv .v{flex:1;min-width:0;word-break:break-all}.empty{padding:40px 24px;text-align:center;color:var(--sub);background:var(--card);border:1px dashed var(--border);border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:10px}.toast{position:fixed;left:50%;bottom:calc(24px + var(--safe-b));transform:translate(-50%);background:var(--text);color:#fff;padding:10px 16px;border-radius:6px;font-size:13px;z-index:60;max-width:92vw}.modal-bg{position:fixed;inset:0;background:#0014247a;display:flex;align-items:flex-end;justify-content:center;padding:0;z-index:50}.modal{background:var(--card);border-radius:12px 12px 0 0;padding:20px;width:100%;max-width:560px;display:flex;flex-direction:column;gap:14px;max-height:92vh;overflow:auto;padding-bottom:calc(20px + var(--safe-b))}.modal h2{font-size:18px;font-weight:800}@media(min-width:640px){.modal-bg{align-items:center;padding:24px}.modal{border-radius:8px}}.note{background:var(--info-bg);border-radius:8px;padding:12px 14px;font-size:13px;color:var(--info);line-height:1.55;display:flex;gap:10px;align-items:flex-start}.note.warn{background:var(--wait-bg);color:var(--wait)}.note.err{background:var(--err-bg);color:var(--err)}.note.ok{background:var(--ok-bg);color:var(--ok)}.noimg{background:var(--muted);color:var(--ph);display:flex;align-items:center;justify-content:center}.steps{list-style:none;display:flex;gap:0;flex-wrap:wrap;row-gap:6px}.steps li{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ph);white-space:nowrap;padding-right:14px;position:relative}.steps li .dot{width:22px;height:22px;border-radius:4px;border:1.5px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:none;background:var(--card)}.steps li.done{color:var(--sub)}.steps li.done .dot{background:var(--ok-raw);border-color:var(--ok-raw);color:#fff}.steps li.cur{color:var(--blue);font-weight:700}.steps li.cur .dot{background:var(--blue);border-color:var(--blue);color:#fff}.sticky-actions{position:sticky;bottom:calc(12px + var(--safe-b));background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;gap:8px;flex-wrap:wrap;z-index:5}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--card)}.auth .box{width:100%;max-width:400px;display:flex;flex-direction:column;gap:18px}.auth .hero-logo{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;padding-bottom:12px}.auth .links{display:flex;justify-content:center;align-items:center;gap:4px;font-size:14px}.auth .links a{padding:12px}.auth .links .bar{color:var(--border)}.logo{display:flex;align-items:center;gap:12px}.logo .t{font-size:24px;font-weight:800;color:var(--navy);letter-spacing:-.02em}.logo .t span{color:var(--blue);font-size:14px;margin-left:6px;font-weight:500}.today-grid{display:grid;gap:20px;grid-template-columns:minmax(0,1fr);align-items:start}@media(min-width:1024px){.today-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media(min-width:1280px){.today-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 340px}}.col{display:flex;flex-direction:column;gap:12px;min-width:0}.gtitle{display:flex;align-items:center;justify-content:space-between;gap:8px}.gtitle span{font-size:12px;color:var(--sub)}.datenav{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0}.datenav .d{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:var(--navy);white-space:nowrap}.nowcard{background:var(--card);border:1.5px solid var(--blue);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:14px}.art{border-radius:6px;background:#f1f4f7;display:flex;align-items:center;justify-content:center;flex:none;overflow:hidden}.nowcard .head{display:flex;gap:12px;align-items:flex-start}.nowcard .name{font-size:18px;font-weight:700;color:var(--navy);line-height:1.35}.nowcard .amt{font-size:20px;font-weight:800;color:var(--navy)}.ach{display:flex;align-items:center;gap:10px;font-size:13px}.ach .l,.ach .t{color:var(--sub);white-space:nowrap}.ach b{color:var(--navy);width:36px;text-align:right}.btn2{display:grid;grid-template-columns:1fr 2fr;gap:8px}.crow{display:flex;gap:12px;padding:12px 14px;align-items:flex-start}.crow+.crow{border-top:1px solid var(--border);margin:0 14px;padding-left:0;padding-right:0}.crow .tm{width:42px;flex:none;display:flex;flex-direction:column;font-size:12px;color:var(--sub);padding-top:1px;font-variant-numeric:tabular-nums}.crow .tm b{color:var(--text);font-size:13px}.crow .bd{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.crow .nm{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.crow .nm>span:first-child{font-size:15px;font-weight:700;color:var(--navy);line-height:1.4}.crow .am{font-size:13px;color:var(--sub)}.crow .pg{display:flex;align-items:center;gap:8px;font-size:12px}.crow .pg b{color:var(--navy);width:34px;text-align:right}a.crow:hover{background:#fafbfc}.plan-grid{display:grid;gap:24px;grid-template-columns:minmax(0,1fr);align-items:start}@media(min-width:1100px){.plan-grid{grid-template-columns:minmax(0,1fr) 380px}}.excard{display:grid;gap:14px 18px;grid-template-columns:minmax(0,1fr)}@media(min-width:760px){.excard{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.exhead{display:flex;gap:12px;align-items:center}.winrow{display:flex;align-items:center;gap:8px;height:48px;padding:0 6px 0 12px;border:1px solid var(--border);border-radius:6px;background:var(--card);cursor:pointer;width:100%;text-align:left}.winrow b{font-size:15px;color:var(--navy);flex:1;font-variant-numeric:tabular-nums}.winrow.bad{border-color:#f3b4b4;background:var(--err-bg)}.winrow.bad b{color:var(--err)}.daybtn{width:40px;height:40px;border-radius:6px;border:1px solid var(--border);background:var(--card);font-size:13px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:2px}.daybtn.on{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:700}.daygrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:420px}.daygrid button{height:44px;border-radius:6px;border:1px solid var(--border);background:var(--card);font-size:15px;font-weight:500}.daygrid button.on{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:800}.daygrid button.last{grid-column:span 4;border-style:dashed;font-size:14px}.timegrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.timegrid button{height:48px;border-radius:6px;border:1px solid var(--border);background:var(--card);font-size:16px;font-weight:500}.timegrid button.dim{color:var(--ph)}.timegrid button.on{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:800}.addex{width:100%;min-height:56px;border:1px dashed var(--blue);border-radius:8px;color:var(--blue);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--card)}.addex:hover{background:#f2f7fb}.weekdots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center;font-size:11px;color:var(--sub)}.weekdots i{display:flex;align-items:center;justify-content:center;height:32px;border-radius:6px;border:1px solid var(--border);background:var(--bg);font-style:normal;font-size:12px;font-weight:700;color:#fff;margin-top:6px}.weekdots i.on{background:var(--blue);border-color:var(--blue)}.planlist li{font-size:13px;line-height:1.6}.rep-grid{display:grid;gap:20px;grid-template-columns:minmax(0,1fr);align-items:start}@media(min-width:1100px){.rep-grid{grid-template-columns:minmax(0,1fr) 360px}}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}@media(min-width:1024px){.cal{gap:8px}}.cal .wd{text-align:center;font-size:11px;color:var(--sub);padding-bottom:2px}.cal .wd.sun{color:var(--err)}.cal .c{height:54px;border-radius:6px;padding:3px 4px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid transparent;min-width:0}.cal .c .dn{font-size:10px;line-height:1;opacity:.85}.cal .c b{font-size:12px;line-height:1;text-align:center;font-variant-numeric:tabular-nums}.cal .c .av{display:none;font-size:12px;text-align:center;line-height:1.2}.cal .c .pb{height:4px;border-radius:2px;overflow:hidden}.cal .c .pb i{display:block;height:100%}.cal .c.good{background:var(--blue);border-color:var(--blue);color:#fff}.cal .c.good .pb{background:#ffffff4d}.cal .c.good .pb i{background:#fff}.cal .c.part{background:#cfe2ef;border-color:#cfe2ef;color:var(--navy)}.cal .c.part .pb{background:#002b491f}.cal .c.part .pb i{background:var(--blue)}.cal .c.zero{background:#fff;border:1px dashed #F3B4B4;color:var(--err)}.cal .c.zero .pb{background:var(--border)}.cal .c.none{background:var(--bg);border-color:var(--border);color:var(--sub)}.cal .c.tap{cursor:pointer}.cal .c.tap:hover{filter:brightness(.97)}.cal .c .top{display:flex;align-items:center;justify-content:space-between;gap:2px;min-width:0}.cal .c .wt{font-style:normal;font-size:9px;font-weight:700;line-height:1.1;padding:0 2px;border-radius:3px;background:#ffffffeb;white-space:nowrap;font-variant-numeric:tabular-nums}.cal .c .wt.up{color:#b45309}.cal .c .wt.down{color:#047857}.cal .c .wt.same{color:var(--sub)}.cal .c .wt.first{color:var(--navy)}@media(min-width:1024px){.cal .c .wt{font-size:11px;padding:1px 4px}}.cal .c.body{height:104px;justify-content:flex-start;gap:3px}.cal .c .bodyb{display:flex;flex-direction:column;margin-top:auto;align-self:stretch;width:100%;box-sizing:border-box;background:#fffffff0;border-radius:3px;padding:1px;min-width:0;overflow:hidden}.cal .c .bodyb .bl{display:flex;align-items:baseline;gap:0;white-space:nowrap;font-size:8px;line-height:1.25;letter-spacing:-.2px;font-variant-numeric:tabular-nums}.cal .c .bodyb .bl b{font-size:8px;color:var(--navy);font-weight:700;text-align:left}.cal .c .bodyb .wt{background:none;padding:0;font-size:8px}@media(max-width:599px){.cal .c .bodyb .wt .n{display:none}}@media(min-width:600px){.cal .c .bodyb .bl,.cal .c .bodyb .bl b,.cal .c .bodyb .wt{font-size:10px;letter-spacing:0}}@media(min-width:1024px){.cal .c.body{height:128px}.cal .c .bodyb{padding:2px 3px}.cal .c .bodyb .bl,.cal .c .bodyb .bl b,.cal .c .bodyb .wt{font-size:11px}}@media(min-width:1024px){.cal .c{height:88px;padding:6px 8px}.cal .c .dn{font-size:12px}.cal .c b{font-size:17px}.cal .c .av{display:block}}.legend{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:var(--sub);align-items:center}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:14px;height:14px;border-radius:3px;display:inline-block}.stbar{display:flex;gap:2px;height:14px;border-radius:4px;overflow:hidden}.stbar span{display:block;height:100%}.strow{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:14px}.strow b{color:var(--navy)}.strow b small{font-weight:500;color:var(--sub);font-size:12px;margin-left:4px}.ex-photo{position:relative;width:100%;border-radius:8px;overflow:hidden;background:#f1f4f7;display:flex;align-items:center;justify-content:center;padding:14px 0}.ex-photo.noimg{background:#f1f4f7;border:1px dashed #B8C3CE;flex-direction:column;gap:8px}.ex-photo .cuts{display:flex;width:100%;max-width:420px}.ex-photo .cuts figure{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--sub)}.ex-thumb{flex:none;border-radius:6px;overflow:hidden;background:#f1f4f7;display:flex;align-items:center;justify-content:center;padding:0;border:0}.ex-thumb .bodymap{gap:2px}.ex-list{display:flex;flex-direction:column;gap:10px;max-height:56vh;overflow-y:auto}.ex-row{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--card)}.ex-row.cur{border:1.5px solid var(--blue);background:#f2f7fb}.ex-row-body{flex:1;min-width:0;text-align:left;display:flex;flex-direction:column;gap:4px}.ex-row-body b{font-size:15px;color:var(--navy);line-height:1.4}.ex-card{display:flex;gap:12px;align-items:center}.viewer-photo{position:relative}.viewer-photo .nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:var(--card);border:1px solid var(--border);color:var(--navy);display:flex;align-items:center;justify-content:center}.viewer-photo .nav.prev{left:6px}.viewer-photo .nav.next{right:6px}.viewer-body{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.bodymap{display:flex;gap:4px;flex:none}.bodymap-side{display:flex;flex-direction:column;align-items:center;gap:4px}.bodymap-side figcaption{font-size:11px;color:var(--sub)}.muscle-legend{display:flex;flex-direction:column;gap:6px;font-size:13px}.muscle-legend b{color:var(--navy)}.muscle-legend .dot{display:inline-block;width:14px;height:14px;border-radius:3px;margin-right:8px;vertical-align:-2px}.dot.hl{background:var(--hl)}.dot.hl-soft{background:var(--hl-soft)}.ex-steps{margin:0 0 0 20px;display:flex;flex-direction:column;gap:6px;line-height:1.6;font-size:14px}@media(max-width:1023px){.hide-m{display:none!important}}@media(min-width:1024px){.only-m{display:none!important}}.setrow{display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 8px 6px 16px;font-size:15px;color:var(--text)}.setrow+.setrow{border-top:1px solid var(--border)}.setrow .k{flex:none;min-width:88px}.setrow .v{flex:1;min-width:0;text-align:right;color:var(--sub);word-break:break-all}.setrow.link{padding-right:16px}.setrow.link:hover{background:#fafbfc;color:var(--text)}.sw{width:48px;height:28px;border-radius:6px;background:#c9ced6;position:relative;flex:none;transition:background .12s ease-out;margin-right:8px}.sw i{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:4px;background:#fff;transition:left .12s ease-out}.sw.on{background:var(--blue)}.sw.on i{left:23px}.setdots{display:flex;gap:6px}.setdots i{width:28px;height:8px;border-radius:4px;background:var(--border)}.setdots i.on{background:var(--ok-raw)}.setdots i.cur{background:var(--blue)}.restcard{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 16px;background:var(--navy);border-color:var(--navy);color:#fff;text-align:center}.restcard .sub,.restcard .caption{color:#c7d7e3}.restcard b.num{font-size:72px;line-height:1;color:#fff}.restcard .btn{background:transparent;color:#fff;border-color:#ffffff80}.restcard .btn.tonal{background:#ffffff24;border-color:transparent}.stepper{display:flex;flex-direction:column;gap:6px}.stepper .l{font-size:13px;font-weight:500}.stepper .c{display:flex;align-items:center;justify-content:space-between;gap:8px}.stepper b{font-size:28px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}.stepper b small{font-size:13px;font-weight:500;color:var(--sub);margin-left:4px}.iconbtn.bd{width:48px;height:48px;border:1px solid var(--border);background:var(--card)}.sticky-actions .btn{flex:none}.stepbar{display:flex;gap:4px}.stepbar i{flex:1;height:4px;border-radius:2px;background:var(--border)}.stepbar i.on{background:var(--blue)}.agree{display:flex;align-items:center;gap:8px;min-height:52px;border-bottom:1px solid var(--border)}.agree a{font-size:13px;color:var(--sub);text-decoration:underline;padding:12px 4px;flex:none}.agree.all{background:var(--tonal);border:0;border-radius:6px;padding:0 12px;margin-bottom:4px}.agree:not(.all){padding:0 12px}.chkrow{display:flex;align-items:center;gap:12px;flex:1;min-height:48px;text-align:left;font-size:15px}.chk{width:24px;height:24px;border-radius:4px;border:1.5px solid #B8C3CE;background:var(--card);display:inline-flex;align-items:center;justify-content:center;flex:none}.chk.on{background:var(--blue);border-color:var(--blue)}.codein{font-size:20px;font-weight:700;letter-spacing:.3em;font-variant-numeric:tabular-nums}.setrow .v:last-child{padding-right:8px}.crow .retry{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:2px}.crow .tm{width:46px}.worktimer{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 0 4px;text-align:center}.worktimer b.num{font-size:72px;line-height:1.05}.stepline{font-size:17px;font-weight:500;line-height:1.6;min-height:56px;color:var(--text)}.board{display:flex;flex-direction:column}.brow{display:flex;align-items:center;gap:12px;padding:10px 4px;border-top:1px solid var(--border)}.brow:first-child{border-top:0}.brow.me{background:#f2f7fb;border-radius:6px}.rank{width:40px;flex:none;text-align:center;font-size:18px;font-weight:800;color:var(--sub)}.rank small{font-size:11px;font-weight:500;margin-left:1px}.rank.top{color:var(--navy)}.rank.r1{color:var(--blue)}.brow .who{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.brow .who b{font-size:14px;color:var(--navy)}.brow .bars{display:grid;grid-template-columns:28px minmax(0,1fr) 52px;gap:2px 6px;align-items:center;font-size:11px;color:var(--sub)}.brow .bars .v{text-align:right;color:var(--text);font-variant-numeric:tabular-nums}.brow .score{width:52px;flex:none;text-align:right}.brow .score b{font-size:20px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}.invite{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1.5px solid var(--blue);border-radius:8px;background:#f2f7fb;flex-wrap:wrap}.invite .txt{flex:1;min-width:200px;display:flex;flex-direction:column;gap:2px}.invite .txt b{color:var(--navy)}.grouphead{display:flex;align-items:center;gap:8px;width:100%;padding:12px 14px;text-align:left;flex-wrap:wrap}.grouphead b{color:var(--navy);font-size:15px}.gstrip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:4px;background:var(--tonal);color:var(--navy);font-size:12px;font-weight:700;white-space:nowrap;align-self:flex-start}.gstrip svg{color:var(--blue)}.gstrip small{font-weight:500;color:var(--info);margin-left:4px;font-size:12px}.gstrip.none{background:var(--muted);color:var(--mt-neutral-text)}.gstrip.none svg{color:var(--sub)}.plangroup{border:1px solid rgba(0,85,140,.35);background:#cfe2ef59;border-radius:var(--r-card,8px);padding:12px}.plangroup.none{border-color:var(--border);background:var(--bg)}.plancard{text-align:left;width:100%;cursor:pointer;transition:border-color .12s}.plancard:hover{border-color:var(--blue)}.stephead{display:flex;align-items:center;gap:10px}.stephead i{width:26px;height:26px;border-radius:4px;background:var(--navy);color:#fff;font-style:normal;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}.stephead div{display:flex;flex-direction:column}.stephead b{font-size:16px;font-weight:800;color:var(--navy)}.stephead span{font-size:12px;color:var(--sub)}.mealbody{display:flex;flex-direction:column;gap:4px;text-align:left;width:100%;padding:8px;border-radius:6px;font-size:14px}.mealbody:hover{background:#f2f7fb}.mealrow{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;padding:6px 6px 6px 12px;font-size:14px}.mealrow .nm{flex:1;min-width:0;display:flex;flex-direction:column}.foodlist{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:8px;max-height:260px;overflow:auto;margin-top:4px}.foodlist button{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;text-align:left;font-size:14px;border-bottom:1px solid var(--border)}.foodlist button:hover{background:#f2f7fb}.cal .c b.sm{font-size:11px;font-weight:500}.cal .c .sub2{font-size:10px;text-align:center;line-height:1;opacity:.8}.cal .c.p100{background:#047857;border-color:#047857;color:#fff}.cal .c.p80{background:var(--blue);border-color:var(--blue);color:#fff}.cal .c.p50{background:#a9cce3;border-color:#a9cce3;color:var(--navy)}.cal .c.p1{background:#fde7c2;border-color:#fde7c2;color:var(--wait)}@media(min-width:1024px){.cal .c .sub2{font-size:12px}}.cal .c{position:relative}.medmk{position:absolute;top:3px;right:3px;width:12px;height:6px;border-radius:3px;box-shadow:0 0 0 1.5px #fff;display:block}.legend .medmk{position:static;width:14px;height:7px;border-radius:4px;box-shadow:none}@media(min-width:1024px){.cal .c .medmk{top:6px;right:6px;width:16px;height:8px;border-radius:4px}}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th,.tbl td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.tbl th{font-size:12px;font-weight:700;color:var(--sub);background:var(--bg);white-space:nowrap}.tbl tr:last-child td{border-bottom:0}
