:root{--ink:#1f1d1b;--sub:#5e564f;--mut:#736960;--line:#ece4d8;--line2:#f4ede2;--terra:#be5535;--terraD:#9a4327;--terraL:#fbefea;--sand:#f3eee8;--bg:#faf8f5;--ok:#3c764c;--okL:#e4f1e7;--warn:#99610e;--bad:#b3413a;--focus:#2563eb;--grad:linear-gradient(135deg,#e0693a,#be5535);--grad-soft:linear-gradient(135deg,#fbe7dc,#f7ede1);--sh:0 1px 2px rgba(40,28,18,.05),0 8px 24px rgba(40,28,18,.06);--sh-lg:0 12px 40px rgba(70,45,25,.14);--r:18px;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:Pretendard Variable,Pretendard,-apple-system,Malgun Gothic,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;word-break:keep-all;letter-spacing:-.01em}h1,h2,h3{letter-spacing:-.03em;line-height:1.2}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.wrap{max-width:1120px;margin:0 auto;padding:24px 20px 64px}.card{border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;box-shadow:var(--sh)}.btn,.card{background:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 16px;border-radius:12px;border:1px solid var(--line);color:var(--ink);font-weight:800;font-size:14px;min-height:42px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}.btn:hover{border-color:var(--terra);color:var(--terraD)}.btn.main{background:var(--grad);color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(194,84,47,.26)}.btn.main:hover{color:#fff;transform:translateY(-1px);box-shadow:0 12px 26px rgba(194,84,47,.34)}.btn.main:active{transform:none}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{font-size:11px;font-weight:800;padding:3px 8px;border-radius:7px;background:var(--sand);color:var(--mut);letter-spacing:.02em}.badge.demo{background:#fff4cc;color:#7a5a00}.badge.risk-high{background:#fbe3e1;color:var(--bad)}.badge.risk-mid{background:#fff1da;color:var(--warn)}.badge.risk-low{background:var(--okL);color:var(--ok)}.kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px}.kpi .card{padding:14px 16px}.kpi .l{font-size:12.5px;color:var(--mut);font-weight:600}.kpi .v{font-size:28px;font-weight:900;letter-spacing:-.04em;margin-top:2px}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;z-index:99;box-shadow:0 8px 24px rgba(0,0,0,.18)}.toast.err{background:var(--bad)}.empty{text-align:center;color:var(--mut);padding:36px 12px;font-size:14px}.skeleton{background:linear-gradient(90deg,#efe9e2 25%,#f7f3ee 50%,#efe9e2 75%);background-size:200% 100%;animation:sk 1.2s infinite;border-radius:8px;min-height:18px}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:12px;color:var(--mut);font-weight:700;padding:8px 10px;border-bottom:1px solid var(--line)}td{padding:10px;border-bottom:1px solid #f0ebe4;vertical-align:middle}tr:hover td{background:#fcfaf7}.score-bar{height:6px;background:#efe8df;border-radius:99px;overflow:hidden}.score-bar i{display:block;height:100%;background:var(--grad);border-radius:99px}.senior{font-size:24px;line-height:1.45;background:var(--bg);min-height:100vh}.senior h1{font-size:28px;margin-bottom:10px;letter-spacing:-.3px}.senior p{color:var(--sub);font-size:24px}.senior .opt{display:block;width:100%;text-align:left;font-size:24px;font-weight:800;padding:16px 18px;margin:10px 0;border:3px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);min-height:64px;box-shadow:0 1px 2px rgba(0,0,0,.04);transition:transform .12s,border-color .12s}.senior .opt:active{transform:scale(.98)}.senior .opt[aria-pressed=true]{border-color:var(--terra);background:var(--terraL);color:var(--terraD);box-shadow:0 8px 20px rgba(194,84,47,.14)}.senior .next{width:100%;font-size:24px;padding:18px;border-radius:16px;margin-top:14px;min-height:68px;justify-content:center}.senior-notice{text-align:center;padding:24px 0}.senior-notice h1{margin-bottom:8px}.senior-ic{width:88px;height:88px;border-radius:99px;display:grid;place-items:center;margin:0 auto 16px}.senior-ic.ok{background:var(--okL);color:var(--ok)}.senior-ic.warn{background:var(--terraL);color:var(--terraD)}.senior-ic.info{background:var(--sand);color:var(--sub)}.senior-summary{font-size:22px;line-height:1.7}.senior .card,.senior-summary{border-radius:20px}@media (max-width:480px){.wrap{padding:16px 14px 48px}.kpi .v{font-size:24px}}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:start}@media (max-width:900px){.week{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.week{grid-template-columns:1fr}}.kpi-card{transition:box-shadow .3s,transform .3s}.kpi-flash{box-shadow:0 0 0 3px var(--terra),0 10px 26px rgba(190,85,53,.25);transform:translateY(-2px)}.kpi-flash .v{color:var(--terraD)}.sheet{max-width:820px;margin:0 auto}@media print{@page{size:A4;margin:14mm}body,html{background:#fff}.btn,.no-print,header.no-print{display:none!important}.has-tabs,.wrap{padding:0;max-width:none}.card,.sheet{border:0;border-radius:0;padding:0;box-shadow:none}section,table{page-break-inside:avoid}a[href]:after{content:""}}.has-tabs{padding-bottom:88px}.me-tabs{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:hsla(0,0%,100%,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.me-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;font-size:12px;font-weight:700;color:var(--mut)}.me-tab .ic{display:flex;line-height:1}.me-tab[aria-current=page]{color:var(--terraD)}.me-tab[aria-current=page]:after{content:"";display:block;width:18px;height:3px;border-radius:99px;background:var(--terra);margin-top:2px}@media (min-width:720px){.me-tabs{max-width:520px;left:50%;right:auto;transform:translateX(-50%);border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0}}.me-tab .dot{position:absolute;top:8px;margin-left:14px;width:8px;height:8px;border-radius:99px;background:var(--terra)}.me-tab{position:relative}.me-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.me-head h1{font-size:20px;font-weight:900;color:var(--ink)}.me-sec{margin-bottom:14px}.me-sec h2{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:800;margin-bottom:8px}.me-sec.accent{border-color:var(--terra)}.me-sub{font-size:12.5px;color:var(--mut);line-height:1.5}.me-item{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}.me-item+.me-item{margin-top:10px}.me-item.unread{border-color:var(--terra);background:#fffbf8}.me-item .t{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:15px;font-weight:800}.me-item .b{font-size:13px;color:var(--sub);margin-top:4px}.me-item .m{font-size:12px;color:var(--mut);margin-top:4px}.me-actions{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.me-actions .btn{justify-content:center;min-height:48px}.me-kv{list-style:none;display:grid;grid-gap:0;gap:0}.me-kv li{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line2);font-size:13.5px}.me-kv li:last-child{border-bottom:0}.me-kv .k{color:var(--mut);width:88px;flex-shrink:0}.me-kv .v{flex:1 1}.me-empty{display:grid;justify-items:center;grid-gap:8px;gap:8px;text-align:center;color:var(--mut);padding:28px 12px;font-size:14px}.me-empty .ic{width:44px;height:44px;border-radius:14px;background:var(--terraL);color:var(--terraD);display:grid;place-items:center}.form-top{justify-content:space-between;gap:10px;margin:8px 0 18px}.form-brand,.form-top{display:flex;align-items:center}.form-brand{gap:8px;font-weight:900;font-size:18px;color:var(--terraD)}.form-brand img{width:28px;height:28px;border-radius:8px}.progress{height:6px;background:#efe8df;border-radius:99px;overflow:hidden;margin:10px 0 18px}.progress i{display:block;height:100%;background:var(--terra);border-radius:99px;transition:width .3s}.field{display:block;margin-bottom:14px}.field>span{display:block;font-size:14px;font-weight:700;margin-bottom:6px}.field>span small{color:var(--mut);font-weight:500;margin-left:4px}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{color:var(--ink);background:#fff}input::placeholder,textarea::placeholder{color:var(--mut);opacity:1}.input{display:block;width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;font:inherit;font-size:16px;min-height:50px;background:#fff}.input:focus{border-color:var(--terra)}.input[aria-invalid=true]{border-color:var(--bad)}.ferr{color:var(--bad);font-size:13px;margin-top:6px}.consent{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:14px;margin-bottom:10px;cursor:pointer;background:#fff}.consent:has(input:checked){border-color:var(--terra);background:var(--terraL)}.consent input{width:22px;height:22px;margin-top:2px;flex-shrink:0;accent-color:var(--terra)}.consent b{font-size:15px}.consent .d{display:block;font-size:13px;color:var(--sub);margin-top:3px;line-height:1.5}.chip-btn{min-height:48px;border-radius:12px;padding:10px 14px;font-size:14.5px}.chip-btn[aria-pressed=true]{border-color:var(--terra);background:var(--terraL);color:var(--terraD)}.demo-accounts{display:grid;grid-gap:8px;gap:8px;margin-top:14px}.demo-acct{display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;min-height:56px}.demo-acct:hover,.demo-acct[aria-pressed=true]{border-color:var(--terra);background:var(--terraL)}.demo-acct .r{font-weight:800;font-size:14.5px;color:var(--terraD);min-width:48px}.demo-acct .m{font-size:13px;color:var(--sub);line-height:1.4}.demo-acct .m small{display:block;color:var(--mut);font-size:12px}.btn.sm{min-height:32px;padding:4px 10px;font-size:12.5px}@media (pointer:coarse){.btn,.btn.sm,.chip-btn,.demo-acct,.input,input[type=date],input[type=email],input[type=month],input[type=password],input[type=tel],input[type=text],select,textarea{min-height:48px}.btn.sm{padding:8px 12px}input[type=range]{min-height:48px}input[type=checkbox],input[type=radio]{width:24px;height:24px}}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.table-scroll.wide table{min-width:560px}.table-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}@media (max-width:480px){.card{padding:16px 14px}.me-actions .btn,.sp-actions .btn{flex:1 1 auto}.kpi{grid-template-columns:repeat(2,minmax(0,1fr))}}.skip-link{position:absolute;left:-9999px;top:8px;z-index:200;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px;font-weight:800;font-size:14px}.skip-link:focus{left:8px;outline:3px solid var(--focus);outline-offset:2px}#main:focus{outline:none}.btn:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.table-scroll{overflow:visible}.table-scroll.wide table{min-width:0}.skip-link{display:none}}