@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.sticky{position:sticky}.bottom-0{bottom:0}.mx-5{margin-inline:calc(var(--spacing) * 5)}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-1{margin-bottom:var(--spacing)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-full{height:100%}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-dvh{min-height:100dvh}.min-h-full{min-height:100%}.w-2{width:calc(var(--spacing) * 2)}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.overflow-x-auto{overflow-x:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.bg-\[\#1A2437\]{background-color:#1a2437}.bg-\[\#2C1517\]{background-color:#2c1517}.bg-\[\#ECFDF5\]{background-color:#ecfdf5}.bg-\[\#FEE500\]{background-color:#fee500}.bg-\[\#FEF2F2\]{background-color:#fef2f2}.bg-white{background-color:var(--color-white)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-\[max\(24px\,env\(safe-area-inset-top\)\)\]{padding-top:max(24px, env(safe-area-inset-top))}.pb-\[max\(32px\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(32px, env(safe-area-inset-bottom))}.text-center{text-align:center}.text-left{text-align:left}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-\[28px\]{font-size:28px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.break-all{word-break:break-all}.text-\[\#6B7280\]{color:#6b7280}.text-\[\#8593AC\]{color:#8593ac}.text-\[\#15803D\]{color:#15803d}.text-\[\#191919\]{color:#191919}.text-\[\#B91C1C\]{color:#b91c1c}.text-\[\#E8A33D\]{color:#e8a33d}.text-\[\#FF8A80\]{color:#ff8a80}.disabled\:opacity-60:disabled{opacity:.6}}:root{--bg:#f4f6fb;--ink:#111827;--dim:#6b7280;--card:#fff;--line:#eef0f5;--blue:#2563eb;--green:#16a34a}html,body{background:radial-gradient(1200px 420px at 10% -10%, #fde7e2 0%, transparent 55%), radial-gradient(900px 380px at 90% 0%, #e7efff 0%, transparent 50%), var(--bg);min-height:100%;color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif}body{min-height:100dvh}.app{width:min(860px,100%);min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px calc(92px + env(safe-area-inset-bottom));margin:0 auto}.login-app{padding-bottom:max(32px, env(safe-area-inset-bottom))}.hero{padding:8px 4px 18px}.brand-line{color:#6b7280;margin:0 0 6px;font-size:14px}.hero h1{letter-spacing:-.04em;margin:0;font-size:40px;font-weight:800}.hero-date,.lede,.panel-kicker,.section-title{color:#6b7280}.hero-date{margin:8px 0 0;font-size:15px}.hero-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wxbadge{background:#fff;border-radius:999px;align-items:center;gap:6px;min-height:40px;margin:8px 0 0;padding:6px 12px;font-size:14px;font-weight:800;display:inline-flex;box-shadow:0 10px 30px #1118270a}.wxbadge span{font-size:18px;line-height:1}.wxbadge em{color:#6b7280;font-size:12px;font-style:normal;font-weight:600}.lede{margin:0 0 14px;font-size:15px;line-height:1.6}.app-body{flex-direction:column;gap:14px;display:flex}.panel,.mine,.duty,.status{background:var(--card);border:1px solid #1118270d;border-radius:22px;box-shadow:0 12px 34px #1118270d}.panel{padding:18px 18px 16px}.panel-kicker{margin:0 0 14px;font-size:13px}.section-title{margin:10px 4px 0;font-size:15px;font-weight:600}.kid-circles{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.kid-circle{flex-direction:column;align-items:center;gap:10px;display:flex}.kid-circle span{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;font-size:28px;font-weight:700;display:flex;box-shadow:0 8px 20px #1118271f}.kid-circle b{font-size:14px;font-weight:500}.tone-1 span{background:#16a34a}.tone-2 span{background:#2563eb}.tone-3 span{background:#ea580c}.panel-link,.row-link{background:var(--card);min-height:56px;color:var(--blue);border-radius:22px;align-items:center;padding:0 18px;font-size:16px;font-weight:600;text-decoration:none;display:flex;box-shadow:0 10px 30px #1118270a}button.panel-link{text-align:left;cursor:pointer;border:0;width:100%}.add-event-link{margin-top:20px}.row-link{box-shadow:none;border-bottom:1px solid var(--line);border-radius:0}.row-link:last-child{border-bottom:0}.list-reset{margin:0;padding:0;list-style:none}.list-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:14px 2px;display:flex}.list-row:last-child{border-bottom:0}.list-title{margin:0;font-size:16px}.list-sub,.list-meta{color:#6b7280;font-weight:400}.list-meta{margin:4px 0 0;font-size:13px}.tabbar{left:50%;bottom:max(10px, env(safe-area-inset-bottom));background:#fff;border-radius:28px;grid-template-columns:repeat(4,1fr);width:min(820px,100% - 20px);padding:8px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 12px 40px #1118271f}.tabbar a{color:#9ca3af;border-radius:22px;justify-content:center;align-items:center;min-height:44px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:#fff;background:#111827}.field{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:14px;width:100%;min-height:48px;margin-top:8px;padding:0 16px;font-size:16px}.field:focus{border-color:#2563eb;outline:none}.btn-main{color:#fff;touch-action:manipulation;cursor:pointer;background:#111827;border:0;border-radius:14px;justify-content:center;align-items:center;width:100%;min-height:52px;margin-top:24px;font-size:16px;font-weight:700;display:flex}.btn-main:active:not(:disabled){background:#374151}.btn-main:disabled{opacity:.6;cursor:default}.event-submit{bottom:calc(78px + env(safe-area-inset-bottom));z-index:5;background:linear-gradient(#f4f6fb00,#f4f6fb 28%);margin-top:16px;padding-top:12px;position:sticky}.event-submit .btn-main{margin-top:0}.btn-sub{color:#111827;background:#fff;border:0;border-radius:14px;justify-content:center;align-items:center;width:100%;min-height:48px;margin-top:12px;font-size:16px;font-weight:700;display:flex;box-shadow:0 8px 24px #1118270f}.day{align-items:baseline;gap:9px;margin:18px 0 4px;display:flex}.day h2{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:600}.day span{color:#6b7280;font-size:13px}.mine{margin-top:0;padding:16px 18px;font-size:14px}.mine b{color:#2563eb;font-weight:600}.duty{align-items:flex-start;gap:13px;margin-top:10px;padding:16px 18px;display:flex}.duty.settled{background:#f8fafc}.duty time{color:#2563eb;flex:0 0 52px;padding-top:1px;font-size:14px;font-weight:600}.duty time small{color:#6b7280;margin-top:2px;font-size:12px;font-weight:500;display:block}.time-fields{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.time-fields label{color:#8593ac;font-size:13px;font-weight:600;display:block}.time-fields .field,.hw-form{margin-top:8px}.hw-form button{appearance:none;font:inherit}.hw-kicker{color:#8593ac;margin:18px 0 8px;font-size:13px;font-weight:600;display:block}.hw-kids{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.hw-kid{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:16px;justify-content:center;align-items:center;gap:6px;width:100%;min-height:48px;padding:0 8px;font-size:14px;font-weight:600;display:flex}.hw-kid span{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:inline-flex}.hw-kid.tone-1 span{background:#16a34a}.hw-kid.tone-2 span{background:#2563eb}.hw-kid.tone-3 span{background:#ea580c}.hw-kid.on{background:#eff6ff;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.hw-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.hw-day{color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:72px;padding:8px 0;font-size:11px;font-weight:600;display:flex}.hw-day b{color:#111827;margin:2px 0;font-size:17px;font-weight:800;line-height:1;display:block}.hw-day em{color:#0000;font-size:10px;font-style:normal;font-weight:700}.hw-day.today em,.hw-day.today b{color:#2563eb}.hw-day.on{color:#dbeafe;background:#2563eb;border-color:#2563eb}.hw-day.on b,.hw-day.on em{color:#fff}.hw-group{background:#f8fafc;border-radius:18px;margin-top:16px;padding:12px}.hw-group-name{color:#4b5563;margin:0 0 10px;font-size:13px;font-weight:700}.hw-items{flex-direction:column;gap:8px;display:flex}.hw-item{color:#111827;text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:14px;align-items:center;gap:12px;width:100%;min-height:52px;padding:10px 12px;font-size:15px;font-weight:600;display:flex}.hw-item.on{background:#eff6ff;border-color:#2563eb}.hw-box{color:#2563eb;border:1.5px solid #d1d5db;border-radius:8px;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:800;display:flex}.hw-item.on .hw-box{color:#fff;background:#2563eb;border-color:#2563eb}.hw-label{flex:1;min-width:0}.hw-item em{color:#6b7280;flex:none;font-size:12px;font-style:normal;font-weight:600}.duty .body{flex:1;min-width:0}.duty .title{letter-spacing:-.01em;font-size:15px;font-weight:500}.duty .meta{color:#6b7280;margin-top:2px;font-size:12.5px}.duty .row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:11px;display:flex}.event-tools{flex-wrap:wrap;gap:8px;display:flex}.event-tools button{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:999px;min-height:44px;padding:0 16px;font-size:14px;font-weight:700}.event-tools button.danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.event-edit{gap:8px;width:100%;margin-top:4px;display:grid}.event-edit .field{margin-top:0}.who-tag{color:#2563eb;background:#eff6ff;border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:500}.who-tag.me{color:#15803d;background:#ecfdf5}.who-tag.open{color:#6b7280;background:#f3f4f6}.act{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.act:disabled{opacity:.6}.act.wait{color:#6b7280;border-style:dashed}.act.danger{color:#b91c1c;border-color:#fecaca}.handoff-banner{background:#fff7ed;border:1px solid #fdba74;border-radius:22px;margin-top:0;padding:16px 18px}.handoff-banner p{margin:0;font-size:14px}.handoff-banner .row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}select.field{appearance:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.top{align-items:center;gap:12px;padding:6px 0;display:flex}.brand{color:#5d6b84;letter-spacing:.02em;flex:1;font-size:13px}.seg{background:#fff;border-radius:999px;gap:2px;padding:3px;display:flex}.seg a{color:#6b7280;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 14px;font-size:13px;font-weight:500;display:flex}.seg a[aria-selected=true]{color:#111827;background:#f3f4f6}.kids{gap:8px;margin:16px 0 4px;display:flex}.kid{text-align:center;min-height:44px;color:inherit;background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex:1;padding:11px 8px}.kid[aria-pressed=true]{border-color:var(--temp,#2563eb);background:#eff6ff}.kid b{font-size:15px;font-weight:600;display:block}.kid span{color:#6b7280;margin-top:1px;font-size:11px;display:block}.kid em{vertical-align:middle;background:#e8703a;border-radius:50%;width:6px;height:6px;margin-left:4px;display:inline-block}.status{border-left:3px solid var(--temp,#2563eb);margin-top:14px;padding:15px 16px}.status h2{margin:0 0 9px;font-size:16px;font-weight:600}.status dl{grid-template-columns:auto 1fr;gap:5px 14px;margin:0;font-size:13.5px;display:grid}.status dt{color:#6b7280}.status dd{margin:0}.status dd b{font-size:14.5px;font-weight:500}.status .none{color:#6b7280;margin:0;font-size:13.5px}.dial{text-align:center;margin-top:26px}.readout{justify-content:center;align-items:center;gap:14px;display:flex}.step{color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:50%;flex:none;justify-content:center;align-items:center;width:52px;height:52px;font-size:24px;font-weight:300;line-height:1;display:flex}.num{letter-spacing:-.04em;color:var(--temp,#4fb3a6);min-width:170px;font-size:76px;font-weight:200;line-height:.9}.num sup{vertical-align:super;margin-left:2px;font-size:22px;font-weight:300}.ruler-wrap{margin-top:14px;position:relative}.ruler{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.ruler::-webkit-scrollbar{display:none}.track{align-items:flex-start;height:64px;padding-top:6px;display:flex}.tick{scroll-snap-align:center;flex:0 0 16px;justify-content:center;display:flex;position:relative}.tick i{background:#d1d5db;border-radius:1px;width:2px;height:13px;display:block}.tick.major i{background:#9ca3af;height:25px}.tick.major span{color:#6b7280;font-size:11px;font-weight:300;position:absolute;top:31px;left:50%;transform:translate(-50%)}.needle{background:var(--temp,#4fb3a6);pointer-events:none;border-radius:1px;width:2px;height:31px;position:absolute;top:0;left:50%;transform:translate(-50%)}.hint{color:#6b7280;margin-top:26px;font-size:12px}.sec{margin-top:26px}.sec>h3{color:#6b7280;margin:0 0 10px;font-size:13px;font-weight:500}.chips{flex-wrap:wrap;gap:7px;display:flex}.chip{color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:999px;min-height:44px;padding:9px 14px;font-size:14px}.chip[aria-pressed=true]{color:#fff;background:#111827;border-color:#111827}.chip.urgent[aria-pressed=true]{color:#ffd9d7;border-color:#d9443f}.photo{color:#6b7280;text-align:left;background:#fff;border:1px dashed #d1d5db;border-radius:13px;width:100%;margin-top:11px;padding:13px;font-size:13.5px}.band{background:#d9443f24;border:1px solid #d9443f73;border-radius:14px;margin-top:14px;padding:14px 16px}.band p{color:#ffc9c6;margin:0 0 10px;font-size:14.5px;font-weight:600}.band a{color:#fff;background:#d9443f;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.save{background:var(--temp,#4fb3a6);color:#101724;border-radius:17px;width:100%;margin-top:24px;padding:17px;font-size:16px;font-weight:700}.ghost{color:#2563eb;background:#fff;border-radius:15px;width:100%;margin-top:9px;padding:14px;font-size:14px;font-weight:600}.log{border-top:1px solid #e5e7eb;margin-top:26px;padding-top:16px}.log h3{color:#6b7280;margin:0 0 12px;font-size:13px;font-weight:500}.log ul{margin:0;padding:0;list-style:none}.log li{border-bottom:1px solid #2e3c5780;gap:12px;padding:9px 0;font-size:13.5px;display:flex}.log li:last-child{border:none}.log time{color:#2563eb;flex:0 0 46px;font-weight:600}.log .who{color:#6b7280;flex:none;margin-left:auto;font-size:12.5px}.sheet{z-index:40;background:#060a12b8;position:fixed;inset:0}.card{color:#1c2230;background:#fbf8f3;border-radius:20px;width:min(400px,100% - 28px);max-height:88vh;padding:26px 24px 22px;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.card h2{letter-spacing:-.03em;margin:0;font-size:25px;font-weight:700}.card .sub{color:#6a7183;margin-top:3px;font-size:14px}.card dl{grid-template-columns:auto 1fr;gap:12px 16px;margin:20px 0 0;display:grid}.card dt{color:#6a7183;white-space:nowrap;font-size:14px}.card dd{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:600}.card dd small{color:#6a7183;margin-top:1px;font-size:13px;font-weight:400;display:block}.card .sym{border-top:1px solid #e4dfd5;margin-top:20px;padding-top:16px;font-size:16px}.card .foot{gap:9px;margin-top:18px;display:flex}.card .foot button{border-radius:13px;flex:1;padding:13px;font-size:14px;font-weight:600}.card .foot .p{color:#fbf8f3;background:#1c2230}.card .foot .s{color:#4a5262;background:#ebe6dc}.expiry{color:#8a8f9c;text-align:center;word-break:break-all;margin-top:13px;font-size:12px}.ask{z-index:50;background:#060a12b3;position:fixed;inset:0}.ask .box{color:#111827;width:min(420px,100%);padding:24px 20px calc(24px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:22px 22px 0 0;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.ask h3{margin:0 0 4px;font-size:18px;font-weight:600}.ask p{color:#6b7280;margin:0 0 16px;font-size:13.5px}.ask .opts{grid-template-columns:1fr 1fr;gap:9px;display:grid}.ask .opts button{background:#f3f4f6;border-radius:14px;min-height:44px;padding:15px;font-size:15px;font-weight:500}.ask .skip{color:#6b7280;width:100%;margin-top:12px;padding:12px;font-size:13.5px}.toast{left:50%;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:60;color:#fff;background:#111827;border:0;border-radius:999px;max-width:calc(100% - 32px);padding:13px 20px;font-size:13.5px;position:fixed;transform:translate(-50%)}.sick input[type=file]{display:none}.shared-page{min-height:100dvh;padding:24px 14px calc(24px + env(safe-area-inset-bottom));background:#0a0f19}.shared-page .card{margin:0 auto;position:relative;top:auto;left:auto;transform:none}.shared-msg{color:#8593ac;text-align:center;padding-top:48px}.growth-curve{width:100%;margin-top:12px;display:block}.chip-tint{color:#6b7280;background:#fff;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:6px 16px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 6px 16px #1118270f}.chip-tint[aria-pressed=true]{color:#1f4fa8;background:#e8eefc;border-color:#c9d7f5}.gstat{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.gchip{background:#f7f8fc;border-radius:14px;padding:10px 12px}.gchip span{color:#6b7280;font-size:11px;font-weight:600;display:block}.gchip b{letter-spacing:-.03em;margin-top:4px;font-size:22px;display:block}.gchip em{color:#6b7280;margin-top:4px;font-size:12px;font-style:normal;font-weight:600;display:block}.chart-legend{color:#6b7280;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:11px;font-weight:700;display:flex}.chart-legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.growth-source{color:#9ca3af;margin:10px 0 0;font-size:12px}.growth-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.repeat-field{margin-top:0}.repeat-row{color:#111827;text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:14px;justify-content:space-between;align-items:center;width:100%;min-height:48px;margin-top:8px;padding:0 16px;font-size:16px;display:flex}.repeat-row span{color:#111827}.repeat-row strong{color:#6b7280;align-items:center;gap:6px;font-weight:500;display:flex}.repeat-row i{color:#c7c7cc;font-size:22px;font-style:normal;line-height:1}.ios-cal-root{z-index:80;color:#000;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);background:#f2f2f7;flex-direction:column;display:flex;position:fixed;inset:0}.ios-cal-nav{background:#f2f2f7;grid-template-columns:1fr auto 1fr;align-items:center;min-height:52px;padding:4px 8px;display:grid}.ios-cal-nav h2{text-align:center;margin:0;font-size:17px;font-weight:600}.ios-cal-link,.ios-cal-spacer{color:#007aff;background:0 0;border:0;min-height:44px;padding:0 8px;font-size:17px}.ios-cal-link.strong{text-align:right;justify-self:end;font-weight:600}.ios-cal-spacer{visibility:hidden}.ios-cal-scroll{flex:1;padding-bottom:24px;overflow:auto}.ios-cal-caption{color:#6d6d72;margin:22px 32px 6px;font-size:13px}.ios-cal-group{background:#fff;border-radius:10px;margin:0 16px;overflow:hidden}.ios-cal-group.days{padding:12px 10px}.ios-cal-row{color:#000;text-align:left;background:#fff;border:0;align-items:center;width:100%;min-height:44px;padding:0 16px;font-size:17px;display:flex}.ios-cal-row+.ios-cal-row{border-top:.5px solid #3c3c431f}.ios-cal-row.input{gap:12px}.ios-cal-row.input input{color:#007aff;background:#f2f2f7;border:0;border-radius:8px;min-height:36px;margin-left:auto;padding:0 10px;font-size:16px}.ios-cal-check{color:#007aff;margin-left:auto;font-size:17px;font-style:normal;font-weight:700}.ios-cal-more{color:#8e8e93;align-items:center;gap:6px;margin-left:auto;font-size:15px;font-weight:400;display:flex}.ios-cal-more i{color:#c7c7cc;font-size:22px;font-style:normal;line-height:1}.ios-cal-row.stepper{justify-content:space-between}.ios-cal-step{align-items:center;gap:8px;display:flex}.ios-cal-step button{color:#007aff;background:#e5e5ea;border:0;border-radius:50%;width:36px;height:36px;font-size:22px;line-height:1}.ios-cal-step b{text-align:center;min-width:42px;font-size:17px;font-weight:600}.ios-cal-seg{background:#fff;grid-template-columns:repeat(4,1fr);gap:4px;padding:10px 12px 12px;display:grid}.ios-cal-seg button{color:#000;background:#f2f2f7;border:0;border-radius:8px;min-height:36px;font-size:16px}.ios-cal-seg button.on{color:#fff;background:#007aff}.ios-cal-days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.ios-cal-days button{aspect-ratio:1;color:#000;background:#f2f2f7;border:0;border-radius:50%;width:100%;max-width:40px;margin:0 auto;font-size:14px;font-weight:600}.ios-cal-days button.on{color:#fff;background:#007aff}.ios-cal-hint{color:#6d6d72;margin:14px 32px 0;font-size:13px}.board-hw{flex-direction:column;gap:12px;display:flex}.board-hw button{appearance:none;font:inherit}.board-week{align-items:center;gap:8px;display:flex}.board-week p{text-align:center;color:#6b7280;flex:1;margin:0;font-size:14px;font-weight:600}.board-icon,.board-chip{color:#111827;background:#fff;border:0;border-radius:999px;min-width:44px;min-height:44px;padding:0 12px;font-size:16px;font-weight:600;box-shadow:0 8px 24px #1118270f}.board-kids,.board-days{scrollbar-width:none;gap:8px;display:flex;overflow-x:auto}.board-kids::-webkit-scrollbar{display:none}.board-days::-webkit-scrollbar{display:none}.board-kid{color:#111827;white-space:nowrap;background:#fff;border:0;border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:6px 12px 6px 6px;font-size:13px;font-weight:700;display:inline-flex}.board-kid span{background:var(--kid,#059669);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:inline-flex}.board-kid.on{color:#fff;background:var(--kid,#059669)}.board-kid.on span{background:#ffffff38}.board-day{color:#6b7280;white-space:nowrap;background:#fff;border:1px solid #0000;border-radius:999px;flex:1 0 auto;min-height:44px;padding:0 12px;font-size:13px;font-weight:700}.board-day.today{box-shadow:inset 0 0 0 1px #1f4fa859}.board-day.on{color:#1f4fa8;background:#e8eefc;border-color:#c9d7f5}.board-card{background:#fff;border-radius:22px;padding:16px 16px 14px;box-shadow:0 10px 30px #1118270a}.board-card h2{margin:0 0 12px;font-size:15px;font-weight:700}.board-group p{color:#6b7280;margin:10px 0 6px;font-size:12px;font-weight:700}.board-task-wrap{margin-bottom:8px}.board-task,.board-step{text-align:left;border:0;align-items:center;gap:10px;width:100%;display:flex}.board-task{background:#f3f4f6;border-radius:14px;min-height:48px;padding:10px 12px}.board-task i,.board-step i{justify-content:center;align-items:center;font-style:normal;font-weight:800;display:flex}.board-task i{background:#e5e7eb;border-radius:8px;width:28px;height:28px}.board-task b{flex:1;font-size:15px;font-weight:600}.board-task em,.board-direct{color:#6b7280;font-size:12px;font-style:normal;font-weight:700}.board-task.on{background:#dcfce7}.board-task.on i{color:#fff;background:linear-gradient(160deg,#34d399,#059669)}.board-steps{gap:4px;margin:4px 0 0 12px;display:grid}.board-step{background:#f3f4f6;border-radius:12px;min-height:40px;padding:6px 10px;font-size:14px;font-weight:600}.board-step i{color:#6b7280;background:#e5e7eb;border-radius:7px;width:24px;height:24px;font-size:11px}.board-step.on{background:#dcfce7}.board-step.on i{color:#fff;background:#34c759}.board-direct{margin:14px 0 6px;display:block}.board-foot{padding:8px 0 max(12px, env(safe-area-inset-bottom));background:linear-gradient(#0000,#f4f6fb 20%);position:sticky;bottom:0}.board-foot .btn-main{margin-top:0}.sched-head{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.sched-head .section-title{margin:0 4px}.view-seg{background:#fff;border-radius:999px;padding:4px;display:inline-flex;box-shadow:0 6px 18px #1118270f}.view-seg button{color:#6b7280;background:0 0;border:0;border-radius:999px;min-width:56px;min-height:40px;padding:0 14px;font-size:14px;font-weight:700}.view-seg button[aria-selected=true]{color:#fff;background:#111827}.sched{margin-top:12px}.sched-kids{scrollbar-width:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.sched-kids::-webkit-scrollbar{display:none}.sched-kid{color:#374151;background:#fff;border:1px solid #e5e7eb;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:44px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.sched-kid i{background:var(--kid,#9ca3af);border-radius:50%;width:10px;height:10px}.sched-kid[aria-pressed=true]{border-color:var(--kid,#111827);background:var(--kid,#111827)}@supports (color:color-mix(in lab, red, red)){.sched-kid[aria-pressed=true]{background:color-mix(in srgb, var(--kid,#111827) 10%, #fff)}}.sched-kid[aria-pressed=true]{color:#111827;box-shadow:inset 0 0 0 1px var(--kid,#111827)}.sched-nav{align-items:center;gap:6px;margin:12px 0 4px;display:flex}.sched-nav b{text-align:center;flex:1;font-size:16px;font-weight:700}.sched-nav button{color:#111827;background:#fff;border:0;border-radius:999px;min-width:44px;min-height:44px;font-size:20px;font-weight:600;box-shadow:0 6px 18px #1118270f}.sched-nav .sched-today{color:#2563eb;padding:0 14px;font-size:13px;font-weight:700}.week-list{flex-direction:column;gap:10px;margin-top:8px;display:flex}.week-day{background:#fff;border-radius:20px;padding:14px 14px 10px;box-shadow:0 10px 30px #1118270a}.week-day.today{box-shadow:inset 0 0 0 2px #2563eb,0 10px 30px #1118270a}.week-day h3{align-items:center;gap:6px;margin:0 0 6px;font-size:15px;font-weight:700;display:flex}.week-day h3 span{color:#6b7280;font-weight:500}.week-day h3 em{color:#2563eb;background:#eff6ff;border-radius:999px;padding:2px 8px;font-size:11px;font-style:normal;font-weight:700}.week-empty{color:#9ca3af;margin:0 0 4px;font-size:13px}.sched-row{border-top:1px solid #f1f2f6}.sched-row:first-child{border-top:0}.sched-main{border:0;border-left:4px solid var(--kid,#9ca3af);width:100%;min-height:52px;color:inherit;text-align:left;background:0 0;align-items:flex-start;gap:10px;padding:10px 0 10px 12px;display:flex}.sched-time{color:#111827;flex:0 0 44px;font-size:13px;font-weight:700}.sched-time small{color:#9ca3af;margin-top:2px;font-size:11px;font-weight:500;display:block}.sched-body{flex:1;min-width:0}.sched-body b{font-size:14px;font-weight:600;display:block}.sched-body span{color:#6b7280;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;display:block;overflow:hidden}.sched-tags{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.sched-tags em{color:#2563eb;white-space:nowrap;background:#eff6ff;border-radius:999px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:600}.sched-tags em.me{color:#15803d;background:#ecfdf5}.sched-tags em.open{color:#6b7280;background:#f3f4f6}.sched-tags em.sched-overlap{color:#c2410c;background:#fff7ed}.sched-open{padding:0 0 12px 16px}.sched-memo{color:#6b7280;margin:0 0 8px;font-size:12px}.month-grid{background:#fff;border-radius:20px;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:8px;padding:10px 8px;display:grid;box-shadow:0 10px 30px #1118270a}.month-head{color:#9ca3af;text-align:center;padding:4px 0;font-size:11px;font-weight:700}.month-cell{color:#111827;background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-height:56px;padding:6px 0 4px;display:flex;position:relative}.month-cell b{font-size:14px;font-weight:600}.month-cell.outside{opacity:.35}.month-cell.today b{color:#fff;background:#2563eb;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.month-cell[aria-pressed=true]{background:#eef2ff}.month-dots{gap:3px;min-height:7px;display:flex}.month-dots i{border-radius:50%;width:7px;height:7px}.month-cell small{color:#9ca3af;font-size:10px;font-weight:600}.month-pick{margin-top:10px}.event-hint{color:#6b7280;margin:0;font-size:12.5px}.event-check{align-items:center;gap:10px;min-height:44px;font-size:14px;display:flex}.event-check input{width:20px;height:20px}.week-day h3.holiday,.week-day h3.holiday span{color:#dc2626}.week-day h3 em.holiday-name{color:#dc2626;background:#fef2f2}.month-cell.holiday b{color:#dc2626}.month-cell.holiday.today b{color:#fff}.holiday-clean{background:#fef2f2;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:12px 14px;font-size:13.5px;display:flex}.holiday-clean p{margin:0}.holiday-clean button{color:#b91c1c;background:#fff;border:1px solid #fecaca;border-radius:999px;flex:none;min-height:44px;padding:0 14px;font-size:13px;font-weight:700}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}
