:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f6f8fb;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}.app-shell{color:#172033;background:#f6f8fb;min-height:100vh}.app-container{box-sizing:border-box;width:min(1180px,100%);margin:0 auto;padding:32px 20px 40px}.app-header,.panel,.flow article{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 12px 32px #0f172a0f}.app-header{justify-content:space-between;align-items:flex-end;gap:24px;padding:28px;display:flex}.eyebrow{color:#1d69d8;margin:0 0 8px;font-size:14px;font-weight:800}.app-header h1,.panel h2,.checklist-group h3,.flow strong{color:#111827;letter-spacing:0;margin:0}.app-header h1{max-width:760px;font-size:clamp(30px,4vw,46px);font-weight:850;line-height:1.16}.header-copy{color:#5b6678;max-width:720px;margin:14px 0 0;font-size:16px;line-height:1.7}.workspace{grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:20px;margin-top:20px;display:grid}.panel{padding:22px;position:relative;overflow:hidden}.panel:before{content:"";width:5px;position:absolute;inset:0 auto 0 0}.input-panel{background:linear-gradient(#eff6ff 0,#fff 145px);border-color:#bfdbfe}.input-panel:before{background:#2f7de1}.checklist-panel{background:linear-gradient(#f0fdf4 0,#fff 145px);border-color:#bbf7d0}.checklist-panel:before{background:#16a34a}.panel-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.panel-heading.align-start{align-items:flex-start}.panel h2{font-size:22px;font-weight:800;line-height:1.25}.panel-heading p,.summary,.empty-state p,.check-item small,.share-status{color:#64748b;font-size:14px;line-height:1.6}.panel-heading p{margin:6px 0 0}textarea{resize:vertical;box-sizing:border-box;color:#172033;width:100%;min-height:360px;font:inherit;background:#f8fafc;border:1px solid #d8e0eb;border-radius:8px;outline:none;padding:16px;font-size:16px;line-height:1.8;transition:border-color .16s,box-shadow .16s,background .16s}textarea:focus{background:#fff;border-color:#2f7de1;box-shadow:0 0 0 4px #2f7de124}button{font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;font-weight:800}button:disabled{cursor:progress;opacity:.68}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #2f7de159}.primary,.ghost{min-height:44px;padding:0 16px}.primary{color:#fff;background:#1769d8;box-shadow:0 8px 18px #1769d82e}.primary:hover{background:#125bbd}.primary.dark{background:#172033}.primary.dark:hover{background:#263247}.ghost{color:#48566a;background:#fff;border:1px solid #d8e0eb}.ghost:hover{background:#f8fafc}.ghost.muted{color:#64748b}.ghost.reset{color:#b91c1c;min-height:100%}.ghost.reset:hover{background:#fef2f2;border-color:#fecaca}.ghost.compact{min-height:36px;padding:0 12px;font-size:13px}.notice-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.action-row{justify-content:space-between;align-items:center;gap:16px;margin-top:16px;display:flex}.summary{margin:0}.checklist-tools{align-items:stretch;gap:8px;display:flex}.stat-box{text-align:right;background:#f1f5f9;border-radius:8px;min-width:82px;padding:10px 14px}.stat-box span{color:#64748b;font-size:12px;font-weight:700;display:block}.stat-box strong{color:#111827;margin-top:2px;font-size:21px;line-height:1.1;display:block}.progress{background:#e8eef6;border-radius:999px;height:12px;overflow:hidden}.progress span{border-radius:inherit;background:#1769d8;height:100%;transition:width .18s;display:block}.checklist{gap:20px;display:grid}.manual-add{grid-template-columns:110px minmax(0,1fr) auto;gap:8px;margin:16px 0 18px;display:grid}.manual-add select,.manual-add input{color:#172033;min-width:0;height:38px;font:inherit;background:#fff;border:1px solid #d8e0eb;border-radius:8px;font-size:14px}.manual-add select{padding:0 10px}.manual-add input{padding:0 12px}.manual-add select:focus,.manual-add input:focus{outline-offset:1px;border-color:#2f7de1;outline:3px solid #2f7de12e}.checklist-group h3{color:#64748b;margin-bottom:8px;font-size:14px;font-weight:850}.item-list{gap:10px;display:grid}.check-item{cursor:pointer;background:#f8fafc;border:1px solid #e8eef6;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;transition:border-color .16s,background .16s;display:flex}.check-item:hover{background:#fff;border-color:#cbd5e1}.check-content{cursor:pointer;flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.check-content input{accent-color:#1769d8;flex:none;width:20px;height:20px;margin:3px 0 0}.item-body{gap:7px;min-width:0;display:grid}.item-meta{flex-wrap:wrap;gap:6px;display:flex}.badge{border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;min-height:24px;padding:0 9px;font-size:12px;font-weight:850;line-height:1;display:inline-flex}.badge-icon{font-size:13px;line-height:1}.type-준비물{color:#1d4ed8;background:#dbeafe;border-color:#bfdbfe}.type-일정{color:#6d28d9;background:#ede9fe;border-color:#c4b5fd}.type-투약{color:#be123c;background:#ffe4e6;border-color:#fecdd3}.type-행사{color:#b45309;background:#fef3c7;border-color:#fde68a}.badge.date{color:#64748b;background:#fff}.badge.importance{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.check-item strong{overflow-wrap:anywhere;color:#111827;font-size:16px}.check-item strong.checked{color:#94a3b8;text-decoration:line-through}.check-item small{overflow-wrap:anywhere}.delete-item{color:#b91c1c;min-height:30px;box-shadow:none;background:#fff;border:1px solid #fecaca;flex:none;padding:0 10px;font-size:12px}.delete-item:hover{background:#fef2f2}.empty-state{text-align:center;border:1px dashed #cbd5e1;border-radius:8px;padding:32px 18px}.empty-state strong{color:#334155}.empty-state p{margin:8px 0 0}.share-status{color:#166534;margin:18px 0 0}.share-actions{border-top:1px solid #e8eef6;justify-content:flex-end;margin-top:20px;padding-top:18px;display:flex}.primary.kakao{color:#191600;background:#fee500;box-shadow:0 8px 18px #3c32001f}.primary.kakao:hover{background:#f4dc00}.flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:20px;display:grid}.flow article{padding:18px;position:relative}.flow-arrow{color:#1769d8;place-items:center;width:18px;height:18px;font-size:22px;font-weight:900;line-height:1;display:grid;position:absolute;top:50%;right:-20px;transform:translateY(-50%)}.flow-arrow:before{content:"→"}.flow article>span:not(.flow-arrow){color:#1769d8;font-size:13px;font-weight:850;display:block}.flow strong{margin-top:8px;font-size:18px;line-height:1.3;display:block}@media (width<=900px){.app-container{padding:18px 14px 28px}.app-header,.workspace,.action-row{flex-direction:column;display:flex}.app-header{align-items:stretch;padding:20px}.workspace{gap:16px}.panel{padding:18px}.panel-heading{flex-direction:column;align-items:flex-start}.checklist-tools{width:100%}.checklist-tools .stat-box{flex:1}textarea{min-height:260px}.action-row{align-items:stretch}.primary,.ghost,.notice-actions{width:100%}.notice-actions .ghost{flex:1}.share-actions{align-items:stretch}.manual-add{grid-template-columns:96px minmax(0,1fr)}.manual-add button{grid-column:1/-1}.flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.flow-arrow{display:none}}@media (width<=520px){.app-header h1{font-size:28px}.flow{grid-template-columns:1fr;gap:28px}.flow-arrow{color:#1769d8;width:22px;height:22px;font-size:24px;display:grid;inset:auto auto -25px 50%;transform:translate(-50%)}.flow-arrow:before{content:"↓"}}
