:root{--k2c-navy-900:#0a1a2f;--k2c-navy-700:#16324f;--k2c-teal-600:#0f8b8d;--k2c-teal-400:#2ec4c6;--k2c-gold-600:#c9922e;--k2c-gold-400:#e8b84b;--k2c-ink:#14121b;--k2c-white:#fcfbf8;--k2c-gray:#7a7a7a;--k2c-cream:#ede7da;--k2c-warning:#d9c13a;--k2c-error:#b23a3a;--k2c-success:#4caf50;--color-bg:var(--k2c-ink);--color-bg-elevated:var(--k2c-navy-900);--color-surface:var(--k2c-navy-700);--color-text-on-dark:var(--k2c-white);--color-text-muted:var(--k2c-cream);--color-text-on-light:var(--k2c-ink);--color-heading:var(--k2c-white);--color-accent:var(--k2c-gold-600);--color-accent-hover:var(--k2c-gold-400);--color-link:var(--k2c-teal-400);--color-gray:var(--k2c-gray);--color-border:#fcfbf824;--color-warning:var(--k2c-warning);--color-error:var(--k2c-error);--color-success:var(--k2c-success);--font-heading:"Playfair Display", Georgia, serif;--font-body:"DM Sans", system-ui, sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shell-max-width:1100px}*{box-sizing:border-box}html,body{background:var(--color-bg);color:var(--color-text-on-dark);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;padding:0}h1,h2,h3{font-family:var(--font-heading);color:var(--color-heading);margin:0}a{color:var(--color-link)}button{font-family:var(--font-body)}.shell{min-height:100vh;max-width:var(--shell-max-width);background:var(--color-bg);flex-direction:column;margin:0 auto;display:flex;position:relative}.shell-header{background:var(--color-bg-elevated);padding:var(--space-4) var(--space-5) 0}.shell-header-row{align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);display:flex}.shell-logo-link{line-height:0;display:block}.shell-logo{width:auto;height:28px;display:block}.shell-product-label{font-family:var(--font-heading);color:var(--color-text-muted);font-size:.9rem}.shell-signout{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-on-dark);padding:var(--space-2) var(--space-4);cursor:pointer;background:0 0;margin-left:auto;font-size:.85rem}.shell-signout:hover{border-color:var(--color-accent);color:var(--color-accent)}.shell-nav-row{gap:var(--space-5);display:flex}.shell-nav-tab{color:var(--color-text-muted);padding-bottom:var(--space-3);border-bottom:2px solid #0000;font-size:.9rem;font-weight:600;text-decoration:none}.shell-nav-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.shell-page-title{font-size:1.5rem}.shell-main{padding:var(--space-6) var(--space-5) var(--space-8);gap:var(--space-5);flex-direction:column;flex:1;display:flex}.shell-footer{padding:var(--space-4) var(--space-5);text-align:center;color:var(--color-gray);flex-direction:column;gap:2px;font-size:.75rem;display:flex}.shell-footer-links{justify-content:center;gap:var(--space-2);display:flex}.card{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:var(--space-5)}.card-title{color:var(--color-heading);margin-bottom:var(--space-3);font-size:1rem}.card-header-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.card-header-row .card-title{margin-bottom:0}.empty-state{color:var(--color-text-muted);font-size:.9rem}.roster-list{gap:var(--space-3);flex-direction:column;display:flex}.roster-card{gap:var(--space-1);flex-direction:column;display:flex}.roster-card-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.roster-card-name{color:var(--color-heading);font-size:.95rem;font-weight:700}.roster-card-meta{gap:var(--space-3);color:var(--color-text-muted);flex-wrap:wrap;font-size:.8rem;display:flex}.roster-card-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}a.btn-primary,a.btn-secondary{align-items:center;text-decoration:none;display:inline-flex}.text-link{color:var(--color-link);font-size:.9rem;text-decoration:none}.text-link:hover{text-decoration:underline}.activity-summary{gap:var(--space-3);margin:var(--space-3) 0 0;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.activity-summary dt{color:var(--color-text-muted);margin:0;font-size:.75rem}.activity-summary dd{margin:var(--space-1) 0 0;color:var(--color-text-on-dark);font-weight:600}.pillar-activity-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.pillar-activity-card .hint{margin-top:0}.deadline-list{gap:var(--space-3);flex-direction:column;display:flex}.deadline-row{padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.deadline-row:last-child{border-bottom:none}.deadline-row-actions{align-items:center;gap:var(--space-3);flex:none;display:flex}.deadline-edit-form{gap:var(--space-3);flex-direction:column;width:100%;display:flex}.admin-list{flex-direction:column;display:flex}.admin-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);display:flex}.admin-row:last-child{border-bottom:none}.admin-row-title{font-weight:600}.admin-row-meta{color:var(--color-text-muted);font-size:.8rem}.admin-row-actions{align-items:center;gap:var(--space-3);flex:none;display:flex}.filter-tabs{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.filter-tab{background:var(--k2c-teal-600);color:var(--k2c-white);padding:var(--space-2) var(--space-4);cursor:pointer;border:none;border-radius:999px;font-family:inherit;font-size:.8rem;font-weight:600}.filter-tab.selected{background:var(--color-accent);color:var(--k2c-navy-900)}.deadline-title{font-weight:600}.deadline-meta{color:var(--color-text-muted);font-size:.8rem}.badge{padding:2px var(--space-2);text-transform:uppercase;border-radius:999px;font-size:.7rem;font-weight:700;display:inline-block}.badge-pending{color:var(--color-warning);background:#d9c13a2e}.badge-overdue{color:var(--color-error);background:#b23a3a33}.badge-completed{color:var(--color-success);background:#4caf502e}.auth-lead{color:var(--color-text-muted);font-size:.9rem;line-height:1.5}.auth-switch{text-align:center;color:var(--color-text-muted);font-size:.9rem}.form-error{color:var(--color-error);padding:var(--space-3);border-radius:var(--radius-sm);background:#b23a3a1f;border:1px solid #b23a3a59;font-size:.85rem}.k2c-form{gap:var(--space-4);flex-direction:column;max-width:360px;display:flex}.stacked-form{gap:var(--space-4);flex-direction:column;display:flex}.form-actions{gap:var(--space-3);display:flex}.k2c-field{gap:var(--space-1);flex-direction:column;display:flex}.k2c-field label{color:var(--color-text-muted);font-size:.85rem}.k2c-field input,.k2c-field select,.k2c-field textarea{padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-on-dark);font-family:inherit;font-size:1rem}.k2c-field textarea{resize:vertical}.k2c-field input:focus,.k2c-field select:focus,.k2c-field textarea:focus{outline:2px solid var(--color-accent);outline-offset:1px}.btn-primary{padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--k2c-navy-900);cursor:pointer;border:none;font-size:1rem;font-weight:700}.btn-primary:hover{background:var(--color-accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-teal{padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);background:var(--k2c-teal-600);color:var(--k2c-white);cursor:pointer;border:none;font-size:1rem;font-weight:700}.btn-secondary{padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);border:1px solid var(--color-border);color:var(--color-text-on-dark);cursor:pointer;background:0 0;font-size:.95rem}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:var(--space-1) var(--space-3);font-size:.8rem}.btn-danger{border-color:var(--color-error);color:var(--color-error)}.btn-danger:hover{background:#b23a3a1f}.btn-teal:hover{background:var(--k2c-teal-400)}.quick-link-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.quick-link-tile{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:var(--space-5);gap:var(--space-2);flex-direction:column;text-decoration:none;display:flex}.quick-link-tile-icon{font-size:1.5rem}.quick-link-tile-title{font-family:var(--font-heading);color:var(--color-heading);font-size:1.05rem}.quick-link-tile-body{color:var(--color-text-muted);font-size:.85rem;line-height:1.4}.not-found-shell{padding:var(--space-6) 0;flex:1;justify-content:center;align-items:center;display:flex}.not-found-card{background:var(--color-bg-elevated);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-5);text-align:center;align-items:center;gap:var(--space-4);flex-direction:column;max-width:420px;display:flex}.not-found-icon{width:72px;height:72px;color:var(--color-accent);background:#c9922e29;border-radius:50%;justify-content:center;align-items:center;font-size:2rem;display:flex}.not-found-code{font-family:var(--font-heading);color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase;font-size:.9rem;font-weight:700}.not-found-title{font-family:var(--font-heading);color:var(--color-heading);font-size:1.4rem}.not-found-body{color:var(--color-text-muted);font-size:.9rem;line-height:1.5}
