.tab-navigation{border-top:1px solid var(--border-color);width:100%;max-width:414px;height:60px;box-shadow:0 -2px 8px var(--shadow-color);z-index:100;background:#fff;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:64px;left:50%;transform:translate(-50%)}.tab-button{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;transition:all .2s;display:flex}.tab-button:hover{background-color:var(--background-color)}.tab-icon{font-size:20px;transition:transform .2s}.tab-label{color:#666;font-size:11px;font-weight:500;transition:color .2s}.tab-button.active .tab-icon{transform:scale(1.1)}.tab-button.active .tab-label{color:var(--primary-color);font-weight:600}.with-tab-navigation{padding-bottom:60px}.dashboard-button-container{pointer-events:none;z-index:101;background:#fffffff2;width:100%;max-width:414px;padding:8px;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -2px 8px #0000001a}.dashboard-button{pointer-events:auto;color:#fff;width:100%;font-weight:600;font-size:var(--font-size-base);cursor:pointer;background:linear-gradient(135deg,#87ceeb,#ff6b9d);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;transition:all .2s;display:flex;box-shadow:0 4px 12px #87ceeb66}.dashboard-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #87ceeb80}.dashboard-button:active{transform:translateY(0)}.dashboard-icon{font-size:20px}.dashboard-label{font-size:var(--font-size-base)}.app-layout{flex-direction:column;min-height:100vh;display:flex;position:relative}.app-header{z-index:100;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;padding:16px 20px;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}.app-title{color:#667eea;letter-spacing:2px;margin:0 0 4px;font-size:28px;font-weight:700}.app-subtitle{color:#666;margin:0;font-size:12px}.layout-content{flex:1;padding-bottom:140px}.all-projects-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:calc(100vh - 60px)}.filters{margin-bottom:var(--spacing-lg);background:#fff}.filter-group{margin-bottom:var(--spacing-md)}.filter-group:last-child{margin-bottom:0}.filter-label{font-size:var(--font-size-sm);color:var(--text-color);margin-bottom:var(--spacing-xs);font-weight:600;display:block}.filter-buttons{gap:var(--spacing-xs);display:flex}.filter-btn{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--border-color);color:var(--text-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;background:#fff;flex:1;font-weight:600;transition:all .2s}.filter-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.filter-btn.active{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;border-color:#0000}.filter-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--text-color);cursor:pointer;background:#fff;transition:border-color .2s}.filter-select:focus{border-color:var(--primary-color);outline:none}.create-project-btn{margin-bottom:var(--spacing-lg);box-shadow:0 4px 12px #667eea4d}.create-project-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.project-card{cursor:pointer;background:#fff;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.project-card:active{transform:translateY(0)}.project-card.completed{opacity:.7;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%)}.project-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:flex-start;display:flex}.project-title-section{gap:var(--spacing-xs);flex-direction:column;flex:1;display:flex}.project-title{font-size:var(--font-size-lg);color:var(--text-color);margin:0;font-weight:700}.child-badge{padding:2px var(--spacing-sm);background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-xs);width:fit-content;font-weight:600;display:inline-block}.completed-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--success-color);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);white-space:nowrap;font-weight:600}.project-description{font-size:var(--font-size-sm);color:#666;margin:0 0 var(--spacing-md) 0;line-height:1.5}.project-meta{gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap;display:flex}.meta-item{flex-direction:column;gap:2px;display:flex}.meta-label{font-size:var(--font-size-xs);color:#999;font-weight:600}.meta-value{font-size:var(--font-size-base);color:var(--text-color);font-weight:700}.meta-value.points{color:var(--accent-color)}.deadline.deadline-overdue .meta-value{color:#dc3545}.deadline.deadline-today .meta-value{color:#fd7e14}.deadline.deadline-urgent .meta-value{color:#ffc107}.deadline.deadline-soon .meta-value{color:#17a2b8}.deadline.deadline-normal .meta-value{color:#28a745}.progress-section{align-items:center;gap:var(--spacing-sm);display:flex}.progress-bar{background:var(--border-color);border-radius:var(--radius-lg);flex:1;height:8px;overflow:hidden}.progress-text{font-size:var(--font-size-sm);color:var(--text-color);text-align:right;min-width:40px;font-weight:600}.users-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:calc(100vh - 60px)}.header-subtitle{font-size:var(--font-size-base);margin-top:var(--spacing-xs);opacity:.9}.children-list{margin-bottom:var(--spacing-lg)}.child-card{border-left:4px solid var(--primary-color);background:linear-gradient(135deg,#fff 0%,#fff9f0 100%)}.child-card.card-clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.child-card.card-clickable:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.child-card.card-clickable:active{transform:translateY(0)}.child-card-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.child-name{font-size:var(--font-size-xl);color:var(--text-color);font-weight:700}.child-points{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-lg);align-items:baseline;gap:4px;display:flex;box-shadow:0 2px 8px #ff6b9d4d}.points-value{font-size:var(--font-size-xxl);font-weight:700}.points-label{font-size:var(--font-size-base);opacity:.9}.btn-add-point{width:100%;font-size:var(--font-size-xl);font-weight:700;box-shadow:0 2px 8px #ff6b9d4d}.add-child-form{border:2px dashed var(--accent-color);background:linear-gradient(135deg,#fff 0%,#f0f8ff 100%)}.empty-state-hint{font-size:var(--font-size-sm);color:#999;margin-top:var(--spacing-xs)}.calendar-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:calc(100vh - 60px)}.calendar-header{margin-bottom:var(--spacing-md);background:#fff;justify-content:space-between;align-items:center;display:flex}.nav-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xl);color:var(--primary-color);cursor:pointer;background:0 0;border:none;transition:transform .2s}.nav-btn:hover{transform:scale(1.1)}.nav-btn:active{transform:scale(.95)}.current-month h2{font-size:var(--font-size-xl);color:var(--text-color);margin:0}.legend{gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:#fff;justify-content:center;display:flex}.legend-item{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);display:flex}.legend-dot{border-radius:50%;width:12px;height:12px}.legend-dot.project{background:#dc3545}.legend-dot.task{background:#007bff}.calendar{background:#fff}.calendar-weekdays{border-bottom:2px solid var(--border-color);grid-template-columns:repeat(7,1fr);display:grid}.weekday{padding:var(--spacing-sm);text-align:center;font-size:var(--font-size-sm);color:var(--text-color);font-weight:600}.weekday:first-child{color:#dc3545}.weekday:last-child{color:#007bff}.calendar-days{background:var(--border-color);grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.calendar-day{aspect-ratio:1;padding:var(--spacing-xs);cursor:pointer;background:#fff;flex-direction:column;transition:background-color .2s;display:flex;position:relative}.calendar-day:hover{background:#f8f9fa}.calendar-day.other-month{opacity:.3}.calendar-day.today{background:#fff3cd}.calendar-day.today:hover{background:#ffe69c}.calendar-day.has-events{cursor:pointer}.day-number{font-size:var(--font-size-sm);color:var(--text-color);margin-bottom:2px;font-weight:600}.calendar-day:nth-child(7n+1) .day-number{color:#dc3545}.calendar-day:nth-child(7n) .day-number{color:#007bff}.event-indicators{flex-wrap:wrap;gap:2px;margin-top:auto;display:flex}.event-dot{color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex}.event-dot.project{background:#dc3545}.event-dot.task{background:#007bff}.modal-overlay{z-index:1000;padding:var(--spacing-lg);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-lg);background:#fff;flex-direction:column;width:100%;max-width:400px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 10px 40px #0000004d}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:var(--font-size-lg);color:var(--text-color);margin:0}.modal-close{font-size:var(--font-size-xl);color:#999;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background-color .2s;display:flex}.modal-close:hover{background:#f8f9fa}.modal-body{padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;display:flex;overflow-y:auto}.event-item{padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:transform .2s,box-shadow .2s;position:relative}.event-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.event-item.project{background:linear-gradient(135deg,#fff5f5 0%,#ffe0e0 100%);border-left:4px solid #dc3545}.event-item.task{background:linear-gradient(135deg,#f0f8ff 0%,#e0f0ff 100%);border-left:4px solid #007bff}.event-item.completed{opacity:.6}.event-type-badge{font-size:var(--font-size-xs);margin-bottom:var(--spacing-xs);color:#666;font-weight:600}.event-title{font-size:var(--font-size-base);color:var(--text-color);margin-bottom:var(--spacing-xs);font-weight:700}.event-project{font-size:var(--font-size-sm);color:#666;margin-bottom:var(--spacing-xs)}.event-child{font-size:var(--font-size-sm);color:#999}.event-completed-badge{top:var(--spacing-sm);right:var(--spacing-sm);padding:2px var(--spacing-xs);background:var(--success-color);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;position:absolute}.settings-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:calc(100vh - 60px)}.settings-section{margin-bottom:var(--spacing-xl)}.children-settings-list{gap:var(--spacing-md);flex-direction:column;display:flex}.child-settings-card{background:#fff}.normal-mode{justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.child-info{flex:1}.child-name{font-size:var(--font-size-lg);color:var(--text-color);margin:0 0 var(--spacing-sm) 0;font-weight:700}.child-stats{gap:var(--spacing-lg);display:flex}.stat-item{flex-direction:column;gap:2px;display:flex}.stat-label{font-size:var(--font-size-xs);color:#999;font-weight:600}.stat-value{font-size:var(--font-size-base);color:var(--text-color);font-weight:700}.child-actions{gap:var(--spacing-xs);flex-direction:column;display:flex}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm)}.btn-danger-outline{color:#dc3545;background:#fff;border:2px solid #dc3545}.btn-danger-outline:hover{color:#fff;background:#dc3545}.edit-mode{width:100%}.form-label{font-size:var(--font-size-sm);color:var(--text-color);margin-bottom:var(--spacing-xs);font-weight:600;display:block}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--text-color);transition:border-color .2s}.form-input:focus{border-color:var(--primary-color);outline:none}.form-actions{gap:var(--spacing-md);display:flex}.form-actions .btn{flex:1}.delete-confirm{width:100%}.confirm-message{text-align:center;margin-bottom:var(--spacing-lg)}.warning-icon{margin-bottom:var(--spacing-md);font-size:48px;display:block}.confirm-message p{margin:0 0 var(--spacing-sm) 0;color:var(--text-color)}.confirm-note{font-size:var(--font-size-sm);color:#dc3545;line-height:1.5}.btn-danger{color:#fff;background:#dc3545;border:none}.btn-danger:hover{background:#c82333}.app-info{background:#fff}.info-row{padding:var(--spacing-md) 0;border-bottom:1px solid var(--border-color);justify-content:space-between;display:flex}.info-row:last-child{border-bottom:none}.info-label{font-size:var(--font-size-sm);color:#666;font-weight:600}.info-value{font-size:var(--font-size-sm);color:var(--text-color);text-align:right}.help-card{background:#fff}.help-title{font-size:var(--font-size-base);color:var(--text-color);margin:0 0 var(--spacing-md) 0;font-weight:700}.help-list{margin:0;padding:0;list-style:none}.help-list li{padding:var(--spacing-sm) 0;font-size:var(--font-size-sm);color:var(--text-color);line-height:1.6}.help-list li strong{color:var(--primary-color)}.dashboard-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;padding-bottom:80px}.page-content{padding:var(--spacing-lg)}.dashboard-header{text-align:center;margin-bottom:var(--spacing-xl);color:#fff}.dashboard-title{font-size:var(--font-size-xxl);margin:0 0 var(--spacing-xs) 0;font-weight:700}.dashboard-subtitle{font-size:var(--font-size-base);opacity:.9;margin:0}.stats-grid{gap:var(--spacing-md);margin-bottom:var(--spacing-xl);grid-template-columns:repeat(2,1fr);display:grid}.stat-card{align-items:center;gap:var(--spacing-md);background:#fff;display:flex}.stat-icon{flex-shrink:0;font-size:32px}.stat-content{flex:1}.stat-label{font-size:var(--font-size-xs);color:#999;margin-bottom:4px;font-weight:600}.stat-value{font-size:var(--font-size-xxl);color:var(--text-color);margin-bottom:4px;font-weight:700}.stat-detail{font-size:var(--font-size-xs);color:#666}.dashboard-section{margin-bottom:var(--spacing-xl)}.section-title{font-size:var(--font-size-lg);color:#fff;margin:0 0 var(--spacing-md) 0;padding-left:var(--spacing-xs);font-weight:700}.ranking-card{background:#fff}.ranking-list{gap:var(--spacing-md);flex-direction:column;display:flex}.ranking-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md);background:linear-gradient(135deg,#f8f9fa 0%,#fff 100%);display:flex}.rank-badge{width:48px;height:48px;font-size:var(--font-size-xl);background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.ranking-info{flex:1}.ranking-name{font-size:var(--font-size-base);color:var(--text-color);margin-bottom:4px;font-weight:700}.ranking-projects{font-size:var(--font-size-xs);color:#666}.ranking-points{align-items:baseline;gap:4px;display:flex}.points-value{font-size:var(--font-size-xxl);color:var(--accent-color);font-weight:700}.points-label{font-size:var(--font-size-sm);color:var(--accent-color);opacity:.8}.upcoming-card{background:#fff}.upcoming-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.upcoming-item{padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;background:#f8f9fa;justify-content:space-between;align-items:center;transition:transform .2s,box-shadow .2s;display:flex}.upcoming-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.upcoming-info{flex:1}.upcoming-title{font-size:var(--font-size-base);color:var(--text-color);margin-bottom:4px;font-weight:700}.upcoming-child{font-size:var(--font-size-xs);color:#666}.upcoming-deadline{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);white-space:nowrap;font-weight:700}.upcoming-deadline.today{color:#fff;background:#fd7e14}.upcoming-deadline.urgent{color:#333;background:#ffc107}.upcoming-deadline.soon{color:#fff;background:#17a2b8}.progress-card{background:#fff}.progress-item{margin-bottom:var(--spacing-lg)}.progress-item:last-child{margin-bottom:0}.progress-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.progress-label{font-size:var(--font-size-sm);color:var(--text-color);font-weight:600}.progress-percentage{font-size:var(--font-size-lg);color:var(--primary-color);font-weight:700}.progress-bar{background:var(--border-color);border-radius:var(--radius-lg);height:24px;margin-bottom:var(--spacing-xs);overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary-color), var(--secondary-color));border-radius:var(--radius-lg);height:100%;padding-right:var(--spacing-sm);justify-content:flex-end;align-items:center;transition:width .5s;display:flex}.progress-fill.task{background:linear-gradient(90deg,#007bff,#0056b3)}.progress-detail{font-size:var(--font-size-xs);color:#666;text-align:right}.empty-state p{font-size:var(--font-size-sm);margin:0}.projects-page{background-color:var(--background-color);min-height:100vh}.page-header{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;padding:var(--spacing-lg) var(--spacing-md);box-shadow:0 2px 8px var(--shadow-color)}.page-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm);font-weight:700}.child-points-display{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);display:flex}.child-points-display .points-value{font-size:var(--font-size-xl);font-weight:700}.projects-section{margin-bottom:var(--spacing-xl)}.section-title{font-size:var(--font-size-lg);color:var(--text-color);margin-bottom:var(--spacing-md);padding-left:var(--spacing-xs);border-left:4px solid var(--primary-color);font-weight:700}.projects-list{gap:var(--spacing-md);flex-direction:column;display:flex}.project-card{border-left:4px solid var(--accent-color);background:#fff;transition:all .2s}.project-card.completed{border-left-color:var(--success-color);opacity:.8}.project-card:hover{transform:translate(4px)}.project-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.project-name{font-size:var(--font-size-lg);color:var(--text-color);flex:1;font-weight:700}.project-deadline{font-size:var(--font-size-sm);color:#666;margin-bottom:var(--spacing-sm)}.project-progress{margin-top:var(--spacing-md)}.progress-bar{width:100%;height:8px;margin-bottom:var(--spacing-xs);background-color:#e0e0e0;border-radius:4px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent-color), var(--primary-color));border-radius:4px;height:100%;transition:width .3s}.progress-text{font-size:var(--font-size-sm);color:#666;text-align:right}.project-members{font-size:var(--font-size-sm);color:#666;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.project-completed-date,.project-reward{font-size:var(--font-size-sm);color:#666;margin-top:var(--spacing-xs)}.project-reward{color:var(--success-color);font-weight:600}.create-project-btn{margin-top:var(--spacing-lg);box-shadow:0 4px 12px #ffa07a4d}.project-detail-page{background-color:var(--background-color);min-height:100vh}.project-detail-header{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;padding:var(--spacing-lg) var(--spacing-md);box-shadow:0 2px 8px var(--shadow-color)}.project-status-badge{margin-bottom:var(--spacing-sm)}.project-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-md);font-weight:700}.project-info-grid{gap:var(--spacing-md);margin-bottom:var(--spacing-md);grid-template-columns:repeat(2,1fr);display:grid}.info-item{flex-direction:column;gap:4px;display:flex}.info-label{font-size:var(--font-size-sm);opacity:.9}.info-value{font-size:var(--font-size-lg);font-weight:600}.info-value.reward{color:var(--success-color);font-size:var(--font-size-xl)}.project-memo{padding:var(--spacing-md);border-radius:var(--radius-sm);margin-top:var(--spacing-md);background:#fff3}.memo-label{font-size:var(--font-size-sm);opacity:.9;margin-bottom:var(--spacing-xs)}.memo-content{font-size:var(--font-size-base);line-height:1.6}.tasks-section{margin-bottom:var(--spacing-lg)}.section-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.task-progress{font-size:var(--font-size-base);color:var(--primary-color);font-weight:600}.tasks-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.task-item{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-sm);border:2px solid var(--border-color);cursor:pointer;background:#fff;transition:all .2s;display:flex}.task-item:hover:not(.disabled){border-color:var(--primary-color);transform:translate(4px)}.task-item.completed{border-color:var(--success-color);background-color:#f0fff0}.task-item.disabled{cursor:not-allowed;opacity:.7}.task-checkbox input[type=checkbox]{cursor:pointer;width:24px;height:24px;margin-top:2px}.task-item.disabled .task-checkbox input[type=checkbox]{cursor:not-allowed}.task-content{flex:1}.task-name{font-size:var(--font-size-lg);color:var(--text-color);margin-bottom:4px;font-weight:600}.task-item.completed .task-name{color:#666;text-decoration:line-through}.task-due-date{font-size:var(--font-size-sm);color:#666;margin-top:4px}.task-memo{font-size:var(--font-size-sm);color:#666;margin-top:4px;font-style:italic}.completion-notice,.completed-notice{border:2px solid var(--success-color);text-align:center;padding:var(--spacing-lg);background:linear-gradient(135deg,#f0fff0,#e8f5e9)}.completion-icon,.completed-icon{margin-bottom:var(--spacing-sm);font-size:48px}.completion-text strong,.completed-text strong{font-size:var(--font-size-lg);color:var(--text-color);margin-bottom:var(--spacing-xs);display:block}.completion-text p,.completed-text p{font-size:var(--font-size-base);color:#666;margin-top:var(--spacing-xs)}.reward-text{color:var(--success-color);font-weight:600;font-size:var(--font-size-lg)}.create-project-page{background-color:var(--background-color);min-height:100vh}.project-form{gap:var(--spacing-lg);flex-direction:column;display:flex}.children-checkboxes{gap:var(--spacing-sm);border:2px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--spacing-sm);background:#fff;flex-direction:column;display:flex}.form-range{background:linear-gradient(90deg, var(--accent-color), var(--primary-color));-webkit-appearance:none;border-radius:4px;outline:none;width:100%;height:8px}.form-range::-webkit-slider-thumb{appearance:none;background:var(--primary-color);cursor:pointer;width:24px;height:24px;box-shadow:0 2px 4px var(--shadow-color);border-radius:50%}.form-range::-moz-range-thumb{background:var(--primary-color);cursor:pointer;width:24px;height:24px;box-shadow:0 2px 4px var(--shadow-color);border:none;border-radius:50%}.range-labels{font-size:var(--font-size-sm);color:#666;margin-top:var(--spacing-xs);justify-content:space-between;display:flex}.tasks-section{border-top:2px solid var(--border-color);padding-top:var(--spacing-lg)}.added-tasks{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);flex-direction:column;display:flex}.added-tasks .task-item{justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);border-left:4px solid var(--accent-color);background:linear-gradient(135deg,#fff 0%,#f0f8ff 100%);display:flex}.task-info{flex:1}.task-info .task-name{font-size:var(--font-size-base);color:var(--text-color);margin-bottom:4px;font-weight:600}.task-info .task-due-date,.task-info .task-memo{font-size:var(--font-size-sm);color:#666;margin-top:4px}.btn-remove-task{color:#999;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:all .2s;display:flex}.btn-remove-task:hover{color:#d32f2f;background-color:#ffe5e5}.add-task-form{border:2px dashed var(--secondary-color);background:linear-gradient(135deg,#fff 0%,#fff9f0 100%)}.add-task-form .form-group{margin-bottom:var(--spacing-md)}.add-task-form .form-group:last-of-type{margin-bottom:var(--spacing-lg)}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#ff6b9d;--secondary-color:#ffa07a;--accent-color:#87ceeb;--background-color:#fff9f0;--text-color:#333;--success-color:#90ee90;--border-color:#e0e0e0;--shadow-color:#0000001a;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--font-size-sm:14px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:24px;--font-size-xxl:28px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:var(--font-size-base);line-height:1.6}#root{max-width:414px;min-height:100vh;box-shadow:0 0 20px var(--shadow-color);background-color:#fff;margin:0 auto}.header{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;padding:var(--spacing-lg) var(--spacing-md);text-align:center;box-shadow:0 2px 8px var(--shadow-color)}.header h1{font-size:var(--font-size-xxl);letter-spacing:2px;font-weight:700}.main-content{padding:var(--spacing-md);min-height:calc(100vh - 80px)}.card{border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:0 2px 8px var(--shadow-color);background:#fff;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-2px)}.card-clickable{cursor:pointer}.btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-lg);text-align:center;border-radius:var(--radius-sm);cursor:pointer;border:none;min-width:44px;min-height:44px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:#ff5a8c;transform:scale(1.02)}.btn-secondary{background-color:var(--secondary-color);color:#fff}.btn-secondary:hover{background-color:#ff9069;transform:scale(1.02)}.btn-success{background-color:var(--success-color);color:var(--text-color)}.btn-success:hover{background-color:#7fdd7f;transform:scale(1.02)}.btn-outline{border:2px solid var(--primary-color);color:var(--primary-color);background-color:#0000}.btn-outline:hover{background-color:var(--primary-color);color:#fff}.btn-small{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-base);min-height:36px}.btn-large{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-xl);min-height:52px}.btn-block{width:100%;display:block}.form-group{margin-bottom:var(--spacing-lg)}.form-label{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs);color:var(--text-color);font-weight:600;display:block}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-sm);font-size:var(--font-size-base);border:2px solid var(--border-color);border-radius:var(--radius-sm);min-height:44px;transition:border-color .2s}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--primary-color);outline:none}.form-textarea{resize:vertical;min-height:100px}.checkbox-group{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);cursor:pointer;display:flex}.checkbox-input{cursor:pointer;width:24px;height:24px}.list{list-style:none}.list-item{padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.list-item:last-child{border-bottom:none}.badge{font-size:var(--font-size-sm);background-color:var(--accent-color);color:#fff;border-radius:12px;padding:4px 12px;font-weight:600;display:inline-block}.badge-success{background-color:var(--success-color);color:var(--text-color)}.badge-primary{background-color:var(--primary-color)}.nav-back{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);border-bottom:1px solid var(--border-color);cursor:pointer;font-size:var(--font-size-lg);color:var(--primary-color);background-color:#fff;font-weight:600;display:flex}.nav-back:hover{background-color:var(--background-color)}.loading{text-align:center;padding:var(--spacing-xl);font-size:var(--font-size-lg);color:var(--primary-color)}.error-message{color:#d32f2f;padding:var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);background-color:#ffe5e5;font-weight:600}.empty-state{text-align:center;padding:var(--spacing-xl);color:#999}.empty-state-icon{margin-bottom:var(--spacing-md);font-size:48px}.text-center{text-align:center}.text-right{text-align:right}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.flex{display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.flex-column{flex-direction:column;display:flex}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}
