@import"https://fonts.googleapis.com/css2?family=Nunito:wght@500;600;700;800&display=swap";:root{--surface-page: #f4f5f7;--surface-card: #ffffff;--surface-card-hover: #f7f8fa;--surface-sunken: #1b1b1b;--surface-sidebar: #161616;--surface-input: #ffffff;--surface-input-disabled: #f4f5f7;--border-subtle: #e7e8ea;--border-strong: #d2d4d8;--ink: #242424;--ink-secondary: #8f8f8f;--ink-tertiary: #b7b8bc;--ink-on-dark: #feffff;--ink-on-dark-secondary: #a7a9ae;--brand-accent: #c6f135;--brand-accent-ink: #1b1b1b;--brand-deep: #005d3b;--action-primary-bg: #1b1b1b;--action-primary-ink: #ffffff;--action-primary-hover: #333333;--focus-ring: #005d3b;--status-success-bg: #e4f6ea;--status-success-ink: #0f7a3d;--status-danger-bg: #fbe7e1;--status-danger-ink: #c13e1b;--status-warning-bg: #fdf0d2;--status-warning-ink: #8a5b06;--status-info-bg: #e3eefd;--status-info-ink: #1d5fc2;--accent-violet-bg: #eee7fc;--accent-violet: #7c4deb;--font-sans: "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(20, 20, 20, .06);--shadow-md: 0 8px 24px rgba(20, 20, 20, .08);--shadow-lg: 0 24px 48px rgba(20, 20, 20, .14)}*{box-sizing:border-box}html{min-width:320px;background:var(--surface-page);color:var(--ink);font-family:var(--font-sans)}body{margin:0}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:var(--surface-page)}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:var(--space-5);height:100vh;padding:var(--space-7);background:var(--surface-sidebar);color:var(--ink-on-dark)}.brand-mark{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--brand-accent)}.brand-name{font-size:24px;font-weight:800;line-height:32px}.nav-item{display:flex;min-height:44px;align-items:center;border-radius:var(--radius-lg);color:var(--ink-on-dark-secondary);font-size:16px;font-weight:700;line-height:24px;padding:var(--space-3) var(--space-4)}.nav-item.active{background:var(--brand-accent);color:var(--brand-accent-ink)}.main-content{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-7);min-width:0}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.page-header p{margin:0 0 var(--space-1);color:var(--ink-secondary);font-size:14px;font-weight:700;line-height:20px}.page-header h1{margin:0;font-size:36px;font-weight:800;line-height:44px}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:700;line-height:20px;padding:11px 20px;transition:background .12s ease-out,border-color .12s ease-out,color .12s ease-out}.button-primary{background:var(--action-primary-bg);color:var(--action-primary-ink)}.button-primary:hover{background:var(--action-primary-hover)}.button-secondary{background:var(--surface-card);border-color:var(--border-subtle);color:var(--ink)}.button-secondary:hover{background:var(--surface-card-hover);border-color:var(--border-strong)}.button-ghost{background:transparent;color:var(--ink-secondary);padding-inline:var(--space-3)}.button-ghost:hover{background:var(--surface-card-hover);color:var(--ink)}.button-danger{background:var(--status-danger-bg);color:var(--status-danger-ink)}.button-danger:hover{filter:brightness(.97)}.button-accent{background:var(--brand-accent);color:var(--brand-accent-ink)}.button-accent:hover{filter:brightness(.96)}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}.summary-card{display:flex;align-items:center;gap:var(--space-4);min-height:104px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm);padding:var(--space-4)}.summary-card-featured{background:var(--surface-sunken);border-color:transparent;color:var(--ink-on-dark)}.summary-icon,.summary-muted-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:var(--radius-md)}.summary-icon{background:var(--brand-accent);color:var(--brand-accent-ink)}.summary-muted-icon{background:var(--surface-card-hover);color:var(--brand-deep)}.summary-card strong{display:block;color:inherit;font-size:24px;font-weight:700;line-height:30px}.summary-card span:last-child{color:var(--ink-secondary);font-size:12px;font-weight:700;letter-spacing:1px;line-height:16px;text-transform:uppercase}.summary-card-featured span:last-child{color:var(--ink-on-dark-secondary)}.filters-panel{display:grid;grid-template-columns:minmax(260px,1fr) minmax(420px,1.4fr);gap:var(--space-5);align-items:end;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm);padding:var(--space-4)}.search-field{display:flex;min-height:44px;align-items:center;gap:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-input);color:var(--ink-secondary);padding:0 14px}.search-field:focus-within{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:1px}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px;line-height:20px}.search-field input::placeholder{color:var(--ink-tertiary)}.filters-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.field{display:flex;flex-direction:column;gap:6px}.field label{color:var(--ink);font-size:13px;font-weight:700;line-height:20px}.field-required{color:var(--status-danger-ink)}.input-box{width:100%;min-height:44px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-input);color:var(--ink);font-size:14px;line-height:20px;padding:11px 14px}.input-box:hover{border-color:var(--border-strong)}.input-box:focus{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:1px}.input-box::placeholder{color:var(--ink-tertiary)}.text-area{min-height:112px;resize:vertical}.field-hint{color:var(--ink-secondary);font-size:12px;font-weight:600;line-height:16px}.field-error{color:var(--status-danger-ink)}.mobile-tabs{display:none}.task-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.task-column{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm);padding:var(--space-4)}.task-column-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.task-column-header h2{margin:0;font-size:16px;font-weight:800;line-height:24px;text-transform:uppercase}.task-column-header span{display:inline-flex;min-width:28px;min-height:28px;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--surface-card-hover);color:var(--ink-secondary);font-size:12px;font-weight:700}.task-column-list{display:flex;flex-direction:column;gap:var(--space-3)}.task-card{display:flex;width:100%;min-height:188px;flex-direction:column;align-items:stretch;gap:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--ink);cursor:pointer;padding:var(--space-4);text-align:left;transition:background .12s ease-out,border-color .12s ease-out}.task-card:hover{background:var(--surface-card-hover);border-color:var(--border-strong)}.task-card-title{color:var(--ink);font-size:18px;font-weight:700;line-height:26px}.task-card-description{display:-webkit-box;overflow:hidden;color:var(--ink-secondary);font-size:14px;font-weight:500;line-height:20px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-card-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto}.badge{display:inline-flex;align-items:center;gap:6px;max-width:100%;border-radius:var(--radius-pill);font-size:12px;font-weight:700;line-height:16px;padding:6px 14px;white-space:nowrap}.badge-dot{width:6px;height:6px;flex:0 0 6px;border-radius:var(--radius-pill);background:currentColor}.badge-success{background:var(--status-success-bg);color:var(--status-success-ink)}.badge-warning{background:var(--status-warning-bg);color:var(--status-warning-ink)}.badge-danger{background:var(--status-danger-bg);color:var(--status-danger-ink)}.badge-info{background:var(--status-info-bg);color:var(--status-info-ink)}.badge-neutral{background:var(--surface-card-hover);color:var(--ink-secondary)}.task-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);color:var(--ink-secondary);font-size:14px;font-weight:600;line-height:20px}.task-card-meta span{display:inline-flex;min-width:0;align-items:center;gap:var(--space-2)}.column-empty{margin:0;border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--ink-secondary);font-size:14px;font-weight:600;line-height:20px;padding:var(--space-4)}.drawer-backdrop{position:fixed;inset:0;z-index:20;display:flex;justify-content:flex-end;background:#14141461}.drawer{display:flex;width:min(520px,100%);height:100%;flex-direction:column;background:var(--surface-card);box-shadow:var(--shadow-lg)}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--border-subtle);padding:var(--space-5) var(--space-6)}.drawer-header h2{margin:0;font-size:24px;font-weight:700;line-height:32px}.drawer-error{margin:var(--space-4) var(--space-6) 0;border-radius:var(--radius-md);background:var(--status-danger-bg);color:var(--status-danger-ink);font-size:14px;font-weight:700;line-height:20px;padding:var(--space-3) var(--space-4)}.task-form{display:flex;min-height:0;flex:1;flex-direction:column}.task-form-content{display:flex;min-height:0;flex:1;flex-direction:column;gap:var(--space-4);overflow:auto;padding:var(--space-6)}.task-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.task-form-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-top:1px solid var(--border-subtle);padding:var(--space-5) var(--space-6)}.task-form-action-group{display:flex;gap:var(--space-3);margin-left:auto}.toast{position:fixed;right:var(--space-7);bottom:var(--space-7);z-index:30;display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-on-dark);box-shadow:var(--shadow-md);font-size:14px;font-weight:700;line-height:20px;padding:var(--space-3) var(--space-4)}.state-panel{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm);padding:var(--space-7)}.state-panel h2{margin:0;font-size:18px;font-weight:700;line-height:26px}.state-panel p{margin:0;color:var(--ink-secondary);font-size:18px;font-weight:500;line-height:28px}.skeleton-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.skeleton-card{min-height:188px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-card),var(--surface-card-hover),var(--surface-card));background-size:200% 100%;box-shadow:var(--shadow-sm);animation:skeleton-shimmer 1.2s ease-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:1279px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{align-items:center;padding:var(--space-5) var(--space-2)}.brand-name,.nav-item{font-size:0}.nav-item{justify-content:center;width:44px;padding:0}.summary-grid,.skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters-panel{grid-template-columns:1fr}.task-board{grid-template-columns:repeat(2,minmax(320px,1fr))}}@media(max-width:767px){.app-shell{display:block;padding-bottom:72px}.sidebar{position:fixed;inset:auto 0 0;z-index:10;height:72px;flex-direction:row;justify-content:center;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-2) var(--space-4)}.brand-mark,.brand-name{display:none}.nav-item{width:auto;min-width:120px;font-size:14px;padding:var(--space-3) var(--space-4)}.main-content{gap:var(--space-5);padding:var(--space-5) var(--space-4)}.page-header{align-items:flex-start;flex-direction:column}.page-header h1{font-size:28px;line-height:36px}.page-header .button{width:100%}.summary-grid,.filters-grid,.task-form-grid,.skeleton-grid{grid-template-columns:1fr}.mobile-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-4)}.mobile-tab{min-height:44px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--ink-secondary);cursor:pointer;font-size:12px;font-weight:800;line-height:16px;padding:var(--space-2)}.mobile-tab.active{background:var(--action-primary-bg);color:var(--action-primary-ink)}.task-board{display:block}.task-column{display:none}.task-column.active-mobile-column{display:flex}.task-card-meta{grid-template-columns:1fr}.drawer{width:100%}.task-form-actions{align-items:stretch;flex-direction:column}.task-form-action-group{width:100%;flex-direction:column-reverse}.task-form-actions .button,.task-form-action-group .button{width:100%}.toast{right:var(--space-4);bottom:88px;left:var(--space-4);justify-content:center}}
