:root{--ink:#142e33;--muted:#718185;--accent:#157d72;--paper:#f5f7f7;--line:#e5ebeb;--shadow:0 8px 30px #183a4010}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font:15px/1.65 -apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;letter-spacing:-.025em}header{max-width:1100px;padding:26px 32px;border-bottom:1px solid var(--line)}header b{font-size:21px;letter-spacing:-.06em}main{max-width:1100px;padding:30px 32px 100px}h1{font-size:clamp(26px,4vw,36px);line-height:1.3;letter-spacing:-.055em;margin:28px 0 10px;font-weight:750}h2{font-size:19px;letter-spacing:-.035em;margin:0 0 14px}h3{font-size:16px}p{margin:10px 0 18px}.sub,small{color:var(--muted)}section,.card{border:1px solid var(--line);border-radius:22px;padding:28px;margin:18px 0;background:white;box-shadow:0 3px 16px #183a4004}.grid{gap:20px}.grid>section{margin:0}.notice{background:#eaf2f0;border:1px solid #dceae5;color:#3c6d62;border-radius:14px;padding:14px 18px;font-size:13px}.notice:before{content:'●';color:#158273;margin-right:9px}label{font-size:14px;font-weight:600;margin:18px 0 7px}input,select,textarea,button{font:inherit;border:1px solid #dbe4e3;border-radius:12px;color:var(--ink);padding:13px 15px;transition:background .18s,border-color .18s,box-shadow .18s,transform .15s}input,select,textarea{background:#fbfcfc}input:focus,textarea:focus,select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 4px #157d7215;background:white}textarea{resize:vertical;line-height:1.7}button{position:relative;min-height:46px;background:white;font-weight:600;cursor:pointer;touch-action:manipulation}button:hover{background:#eff6f4;border-color:#a5c7c0;box-shadow:0 4px 12px #183a400a}button:active{transform:scale(.96);background:#e0eee9}button:focus-visible{outline:3px solid #72bdad;outline-offset:3px}button.primary,button.active{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 4px 12px #157d721a}button.primary:hover,button.active:hover{background:#11695f}button:disabled{cursor:wait;opacity:.65;transform:none}button[aria-busy=true]:before{content:'';display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:9px;vertical-align:-2px;animation:spin .7s linear infinite}button[hidden]{display:none!important}nav{gap:6px;border-bottom:1px solid var(--line);padding-bottom:14px}nav button{border:0;background:transparent;box-shadow:none!important}nav button.active{background:#e4f1ed;color:#137466}.metric{font-size:40px;font-weight:750;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.metric small{font-size:16px;font-weight:500;margin-left:5px}.bar{background:linear-gradient(90deg,#157d72,#8abbb0);height:8px;margin:10px 0 20px}details{border-bottom:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-weight:600}details[open]{animation:appear .2s ease}.measure{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}#view{animation:appear .3s ease}#daily>.primary{width:100%;padding:16px;position:sticky;bottom:16px;z-index:3;box-shadow:0 6px 22px #157d7230}.photo-grid{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.photo-card{position:relative;margin:0;width:140px;height:140px}.photo-card img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;border-radius:16px;border:1px solid var(--line)}.photo-remove{position:absolute;right:-6px;top:-6px;padding:0;width:36px;height:36px;min-height:36px;border-radius:50%;background:#243b40;color:white;border:3px solid white;font-size:22px;line-height:1;box-shadow:0 3px 9px #0002}.photo-remove:hover{background:#b54444;color:white}.photo-policy{font-size:12px;color:#788686;background:#f4f7f6;padding:12px 14px;border-radius:10px}.empty-photos{color:#8b9898;font-size:13px;padding:16px 0}.brand-tag{font-size:11px;letter-spacing:.14em;color:#158273;font-weight:700;margin-bottom:20px}body:has(>form){max-width:480px;margin:9vh auto;padding:24px}body:has(>form)>form{padding:30px;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;margin-top:30px}body:has(>form)>h1{font-size:34px}body:has(>form) button{background:var(--accent);color:white}dialog{padding:28px;box-shadow:0 20px 80px #1234}dialog::backdrop{background:#102b3370;backdrop-filter:blur(4px)}dialog[open]{animation:appear .2s ease}#toast{z-index:30;bottom:28px;max-width:calc(100vw - 32px);width:max-content;border-radius:14px;background:#173d38;box-shadow:0 8px 30px #173d3830;animation:appear .2s ease}#network{position:fixed;right:20px;top:16px;z-index:50;background:#173d38;color:white;border-radius:30px;padding:9px 16px;font-size:12px;box-shadow:var(--shadow)}#network[hidden]{display:none}#network:before{content:'';display:inline-block;width:10px;height:10px;border:2px solid #fff5;border-top-color:white;border-radius:50%;margin-right:8px;animation:spin .7s linear infinite}table{font-variant-numeric:tabular-nums}th{color:var(--muted);font-weight:500}.row{gap:14px}#member{margin-left:12px;min-width:130px}progress{height:7px;border:0;border-radius:10px;accent-color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes appear{from{opacity:0;translate:0 7px}to{opacity:1;translate:0 0}}@media(max-width:600px){header{padding:18px 20px}header b{font-size:19px}header button{font-size:12px;min-height:38px;padding:8px 12px}main{padding:20px 18px 80px}section,.card{padding:22px 18px;border-radius:18px}.grid{gap:14px}nav{background:var(--paper);top:0;padding:12px 0;z-index:5}.metric{font-size:36px}.photo-card{width:calc(50% - 6px);height:auto;aspect-ratio:1}#network{top:auto;bottom:88px;right:18px}body:has(>form){margin:4vh auto;padding:22px}body:has(>form)>form{padding:24px 20px}#member{max-width:180px}}@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
