*{box-sizing:border-box}:root{--bg:#f4f7fb;--bg-soft:#e9eef7;--surface:#fff;--surface-soft:#f8fafc;--surface-tint:#eef4ff;--ink:#111827;--text:#1f2937;--muted:#64748b;--subtle:#94a3b8;--line:#dbe4ef;--line-strong:#c7d2e1;--nav:#08090f;--nav-2:#10131d;--nav-3:#171b29;--brand:#5e6ad2;--brand-2:#7170ff;--brand-dark:#3941a0;--danger:#dc2626;--danger-soft:#fef2f2;--warning:#d97706;--success:#059669;--success-soft:#ecfdf5;--blue:#2563eb;--purple:#7c3aed;--radius-sm:8px;--radius:12px;--radius-lg:18px;--radius-xl:24px;--shadow-sm:0 1px 2px #0f172a0f;--shadow:0 18px 45px #0f172a1a;--shadow-lg:0 28px 80px #0f172a2e}body{font-feature-settings:"cv01", "ss03";color:var(--text);background:radial-gradient(circle at 18% 0,#5e6ad229,#0000 34rem),radial-gradient(circle at 88% 8%,#2563eb1f,#0000 30rem),linear-gradient(135deg,#f8fafc 0%,#eef3fb 100%);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{border-radius:var(--radius-sm);background:linear-gradient(180deg, var(--brand-2), var(--brand));color:#fff;cursor:pointer;border:1px solid #0000;min-height:40px;padding:0 16px;font-weight:700;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;box-shadow:0 8px 20px #5e6ad238}button:hover:not(:disabled){background:linear-gradient(180deg, #8585ff, var(--brand));transform:translateY(-1px);box-shadow:0 12px 28px #5e6ad247}button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}button.secondary{border-color:var(--line);color:var(--text);box-shadow:var(--shadow-sm);background:#ffffffc7}button.secondary:hover:not(:disabled){color:var(--brand-dark);background:#fff;border-color:#5e6ad273}input,select,textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--ink);background:#ffffffeb;padding:0 12px;transition:border-color .15s,box-shadow .15s,background .15s}input::placeholder,textarea::placeholder{color:#a4afbd}input:focus,select:focus,textarea:focus{border-color:var(--brand);background:#fff;outline:none;box-shadow:0 0 0 4px #5e6ad224}textarea{resize:vertical;min-height:92px;padding:11px 12px}label{color:var(--muted);gap:7px;font-size:12px;font-weight:800;display:grid}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);letter-spacing:-.03em}.app-shell{min-height:100vh}.auth-panel,.workspace{margin:0 auto}.auth-panel{border-radius:var(--radius-xl);max-width:480px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffdb;border:1px solid #ffffffad;margin-top:10vh;padding:34px}.brand-lockup,.topbar-title{align-items:center;gap:14px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--brand), #111827);color:#fff;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;font-weight:900;display:inline-grid;box-shadow:0 14px 34px #5e6ad247}.brand-mark.small{border-radius:10px;width:34px;height:34px;font-size:14px}.auth-panel h1{margin:2px 0 0;font-size:32px}.auth-copy,.auth-footnote{color:var(--muted);line-height:1.7}.auth-copy{margin:18px 0 22px}.auth-footnote{margin:14px 0 0;font-size:12px}.workspace{width:100%}.topbar{color:#f8fafc;z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#08090ff0;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:20px;min-height:64px;margin:0;padding:0 24px;display:flex;position:sticky;top:0;box-shadow:0 1px #00000080}.topbar h1{color:#f8fafc;margin:0;font-size:18px}.eyebrow{color:var(--brand-2);letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:900}.topbar .eyebrow,.wp-brand span{color:#9aa4b2}.account{align-items:center;gap:12px;display:flex}.account span,.account strong{display:block}.account span{color:#f8fafc;font-weight:700}.account strong{color:#a7b0c0;font-size:12px}.topbar .secondary{color:#f8fafc;background:#ffffff0d;border-color:#ffffff1f}.wp-frame{grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 64px);display:grid}.wp-sidebar{background:radial-gradient(circle at 25% 0%, #5e6ad233, transparent 18rem), linear-gradient(180deg, var(--nav-2), var(--nav));color:#cbd5e1;border-right:1px solid #ffffff14;height:calc(100vh - 64px);position:sticky;top:64px;overflow-y:auto}.wp-brand{gap:6px;padding:24px 18px 22px;display:grid}.wp-brand .brand-mark{margin-bottom:4px}.wp-brand strong{color:#fff;letter-spacing:-.04em;font-size:22px}.wp-brand span{font-size:12px}.wp-content{min-width:0;padding:28px}.tabs{gap:6px;margin:0;padding:8px 12px;display:grid}.tabs button,.submenu button{color:#cbd5e1;text-align:left;width:100%;min-height:44px;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;padding:0 12px;display:flex}.tabs button:hover,.tabs button.active,.submenu button:hover,.submenu button.active{color:#fff;background:#ffffff12;border-color:#ffffff14;transform:none;box-shadow:inset 0 1px #ffffff0d}.tabs button.active{box-shadow:inset 3px 0 0 var(--brand-2)}.menu-icon{color:#fff;background:#ffffff14;border-radius:8px;place-items:center;width:24px;height:24px;display:inline-grid}.submenu{padding:0 10px 8px 0;display:grid}.command-hero{border-radius:var(--radius-xl);box-shadow:var(--shadow);background:radial-gradient(circle at 92% 10%,#5e6ad238,#0000 19rem),linear-gradient(135deg,#ffffffeb,#f1f5f9e6);border:1px solid #ffffffb8;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;padding:28px;display:flex;overflow:hidden}.command-hero h2{margin:0 0 10px;font-size:clamp(28px,4vw,44px);line-height:1}.command-hero p:not(.eyebrow){max-width:760px;color:var(--muted);margin:0;line-height:1.7}.hero-actions,.head-actions,.modal-actions,.request-actions,.project-row-actions,.member-row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sort-control{gap:4px;min-width:150px}.sort-control select{min-height:34px}.task-row-actions{opacity:.34;flex-wrap:nowrap;align-items:center;gap:6px;transition:opacity .15s;display:flex}.task-row:hover .task-row-actions,.task-row:focus-within .task-row-actions,.task-row.selected .task-row-actions{opacity:1}.task-row-actions button,.project-row-actions button,.request-actions button,.member-row-actions button{min-height:32px;padding:0 10px;font-size:12px}.order-actions{align-items:center;gap:4px;display:inline-flex}button.icon-button{place-items:center;width:32px;min-width:32px;padding:0;font-size:14px;display:inline-grid}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.metric-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#ffffffd6;border:1px solid #ffffffc7;padding:18px}.metric-card span,.metric-card small{color:var(--muted);font-size:12px;font-weight:800;display:block}.metric-card strong{color:var(--ink);letter-spacing:-.05em;margin:8px 0 5px;font-size:34px;display:block}.metric-card.accent{background:linear-gradient(135deg,#eff6ff,#fff);border-color:#5e6ad23d}.metric-card.danger{background:linear-gradient(135deg,#fff1f2,#fff);border-color:#dc262633}.dashboard-task-panel{margin-bottom:18px;padding:16px}.completed-dashboard-panel{margin-top:18px;margin-bottom:0}.compact-section-head{align-items:center;margin-bottom:12px}.compact-section-head h2{font-size:20px}.compact-section-head .muted{margin:0;font-size:12px}.dashboard-task-tree{gap:10px;display:grid}.dashboard-tree-group{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.dashboard-tree-project{color:var(--ink);border-bottom:1px solid var(--line);background:linear-gradient(90deg,#eef2ff,#f8fafc);padding:8px 12px;font-size:13px;font-weight:900}.dashboard-tree-rows{display:grid}.dashboard-tree-row{border-bottom:1px solid #e2e8f0b3;grid-template-columns:22px minmax(180px,1fr) auto auto auto minmax(90px,auto) auto;align-items:center;gap:8px;min-height:34px;padding:6px 12px;font-size:12px;display:grid}.dashboard-tree-row:last-child{border-bottom:0}.dashboard-tree-row.child{background:#fbfdff;padding-left:28px}.dashboard-tree-row.done{background:#f8fffb}.tree-branch{color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:800}.tree-task-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-assignee{max-width:140px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.stack{gap:18px;display:grid}.content-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.tasks-grid{grid-template-columns:minmax(0,1fr)}.mypage-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:start}.panel{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#ffffffe0;border:1px solid #ffffffc7;padding:20px}.span-wide,.profile-summary-panel{grid-column:1/-1}.profile-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.profile-summary div{border:1px solid var(--line);border-radius:var(--radius-md);background:#f8fafc;gap:4px;min-width:0;padding:12px;display:grid}.profile-summary span{color:var(--muted);font-size:12px}.profile-summary strong{overflow-wrap:anywhere}.section-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.section-head h2,.section-head h3{margin:0 0 5px}.section-head h2{font-size:24px}.section-head h3{font-size:18px}.muted{color:var(--muted);line-height:1.6}.notice{border-radius:var(--radius);border:1px solid var(--line);margin:0 0 16px;padding:12px 14px;font-weight:700}.notice.success{background:var(--success-soft);color:#047857;border-color:#05966938}.notice.error{background:var(--danger-soft);color:#b91c1c;border-color:#dc262638}.form-stack{gap:14px;display:grid}.compact-form{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.field-grid,.filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.sub-assignee-picker{gap:8px;display:grid}.assignee-add-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.assignee-add-row button{min-width:72px}.assignee-chip-list{flex-wrap:wrap;gap:7px;display:flex}.assignee-chip{min-height:28px;color:var(--brand-dark);background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;align-items:center;gap:6px;padding:0 8px 0 10px;font-size:12px;font-weight:900;display:inline-flex}button.chip-remove{width:20px;min-height:20px;color:var(--brand-dark);box-shadow:none;background:#ffffffb8;border-radius:999px;padding:0}.field-hint{color:var(--muted);font-size:12px;font-weight:700}.filters{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(#fbfdff,#f8fafc);grid-template-columns:repeat(6,minmax(135px,1fr));margin-bottom:18px;padding:14px}.segmented{border:1px solid var(--line);background:#f1f5f9;border-radius:999px;padding:4px;display:inline-flex}.segmented button{min-height:32px;color:var(--muted);box-shadow:none;background:0 0;border:0;border-radius:999px;padding:0 13px}.segmented button:hover,.segmented button.active{color:var(--brand-dark);box-shadow:var(--shadow-sm);background:#fff;transform:none}.task-list,.project-list,.request-list,.member-list,.subtask-panel{gap:10px;display:grid}.project-task-group{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;overflow:hidden}.project-group-head{width:100%;min-height:54px;color:var(--text);text-align:left;box-shadow:none;background:linear-gradient(#fbfdff,#f8fafc);border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:10px;padding:0 16px;display:flex}.project-group-head:hover{box-shadow:none;background:#f1f5f9;transform:none}.project-group-head strong,.project-row-main strong,.task-list-title strong,.board-card strong,.subtask-row strong,.member-main strong{color:var(--ink)}.project-group-head small{color:var(--muted);margin-top:2px;display:block}.chevron{color:var(--brand);font-size:16px}.project-task-body{border-top:1px solid var(--line);gap:8px;padding:10px;display:grid}.task-row,.project-row,.request-row,.member-row,.subtask-row,.approval-row{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#ffffffeb;justify-content:space-between;align-items:center;gap:16px;padding:12px;display:flex}.task-row{cursor:pointer}.task-row:hover,.board-card:hover,.project-row:hover,.request-row:hover,.member-row:hover,.approval-row:hover{background:#fff;border-color:#5e6ad252}.task-row.selected{border-color:#5e6ad28c;box-shadow:0 0 0 4px #5e6ad21a}.child-task-list{border-left:2px solid #d9e2ff;gap:8px;margin-left:24px;padding-left:14px;display:grid}.child-task-row{background:#fbfdff}.task-main,.request-main,.member-main,.project-row-main,.approval-main{min-width:0}.task-title-line{align-items:center;gap:8px;display:flex}.icon-toggle,.icon-spacer{flex:none;width:28px;height:28px}.icon-toggle{min-height:28px;color:var(--brand-dark);box-shadow:none;background:#eef2ff;border-radius:999px;place-items:center;padding:0;display:inline-grid}.icon-toggle:hover{transform:none}.task-list-title{grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:7px 8px;min-width:0;display:grid}.task-meta-text{color:var(--muted);grid-column:1/-1;font-size:12px;font-weight:800}.task-list-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.badge,.task-list-title small,.member-main small,.project-row-main span,.request-main small{white-space:nowrap;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}button.inline-badge{width:auto;min-height:24px;box-shadow:none;cursor:pointer;border-radius:999px;padding:0 9px;transition:border-color .15s,box-shadow .15s,transform .15s}button.inline-badge:hover:not(:disabled){transform:none;box-shadow:0 0 0 3px #5e6ad224}.badge-neutral,.member-main small,.project-row-main span,.request-main small{border:1px solid var(--line);color:var(--muted);background:#f8fafc}.priority-red{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.priority-orange{color:#9a3412;background:#ffedd5;border:1px solid #fed7aa}.priority-yellow{color:#854d0e;background:#fef9c3;border:1px solid #fde68a}.priority-green,.status-green{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.priority-slate,.status-slate{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.status-blue{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.status-amber{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.status-purple{color:#6d28d9;background:#ede9fe;border:1px solid #ddd6fe}.board{grid-template-columns:repeat(5,minmax(220px,1fr));gap:14px;padding-bottom:4px;display:grid;overflow-x:auto}.board-column{border:1px solid var(--line);border-radius:var(--radius-lg);background:#f8fafc;min-height:260px;padding:12px;transition:border-color .15s,box-shadow .15s,background .15s}.board-column.drop-target{border-color:#5e6ad2b8;box-shadow:0 0 0 4px #5e6ad21f}.board-column h3{margin:2px 4px 12px;font-size:14px}.column-status-blue{background:#eff6ff}.column-status-amber{background:#fffbeb}.column-status-purple{background:#f5f3ff}.column-status-green{background:#f0fdf4}.board-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;background:#ffffffeb;gap:8px;margin-bottom:10px;padding:13px;display:grid}.board-card.is-draggable{cursor:grab}.board-card.is-draggable:active{cursor:grabbing}.board-card.is-dragging{opacity:.48;border-color:#5e6ad299;transform:scale(.99)}.board-card>span{color:var(--muted);font-size:12px;font-weight:700}.meta-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:12px;display:flex}.progress-track{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--brand), #22c55e);height:100%;display:block}.inline-edit-popover{z-index:70;border:1px solid var(--line-strong);border-radius:var(--radius);width:min(278px,100vw - 24px);box-shadow:var(--shadow-lg);background:#fffffffa;gap:12px;padding:12px;display:grid;position:fixed}.inline-edit-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.inline-progress-editor{gap:10px;display:grid}.inline-progress-editor input[type=range]{min-height:24px;padding:0}.inline-progress-value{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.task-detail-panel{background:linear-gradient(#fff,#f8fbff)}.subtask-panel{margin-top:14px}.subtask-row{align-items:flex-start}.subtask-row p{flex-wrap:wrap;align-items:center;gap:7px;margin:6px 0;display:flex}.empty-group{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;margin:0;padding:14px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#08090f9e;place-items:start center;padding:48px 18px;display:grid;position:fixed;inset:0;overflow:auto}.modal-panel{border-radius:var(--radius-xl);width:min(920px,100%);box-shadow:var(--shadow-lg);background:#fffffff5;border:1px solid #ffffffb8;padding:24px}.small-modal-panel{width:min(640px,100%)}.inherit-summary{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.project-row-main,.member-main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.member-main span{color:var(--muted)}.request-actions select{min-width:140px}.approval-list,.approval-log-list{gap:10px;display:grid}.approval-row{align-items:stretch}.approval-main{flex:auto;gap:8px;display:grid}.approval-main .task-list-title{text-align:left;grid-template-columns:auto minmax(180px,1fr) auto auto auto}.approval-summary,.approval-description{margin:0;line-height:1.6}.approval-description{color:var(--text)}.approval-actions{align-content:start;gap:8px;width:min(360px,38%);display:grid}.approval-actions textarea{min-height:72px}.approval-button-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}button.danger-action{color:var(--danger);background:var(--danger-soft);border-color:#fecaca}.approval-log-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);gap:6px;padding:12px;display:grid}.approval-log-row div{justify-content:space-between;gap:12px;display:flex}.approval-log-row p,.approval-log-row small{margin:0}.approval-log-row span,.approval-log-row small{color:var(--muted)}.system-log-panel{grid-column:1/-1}.system-log-filters{margin-bottom:12px}.system-log-months{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.system-log-months button.active{color:var(--primary);background:#eff6ff;border-color:#2563eb59}.system-log-storage{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.system-log-storage article{border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;gap:4px;min-width:0;padding:10px;display:grid}.system-log-storage span,.system-log-storage small{color:var(--muted);font-size:12px}.system-log-storage strong{overflow-wrap:anywhere}.system-log-list{gap:10px;display:grid}.system-log-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);grid-template-columns:minmax(0,1fr);gap:8px;padding:12px;display:grid}.system-log-main,.system-log-meta{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.system-log-time,.system-log-main span,.system-log-main small{color:var(--muted)}.system-log-meta code{overflow-wrap:anywhere;color:#334155;background:#e2e8f0;border-radius:6px;min-width:0;padding:4px 6px;font-size:12px}@media (width<=1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.board{grid-template-columns:repeat(2,minmax(240px,1fr))}.profile-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.topbar,.command-hero,.section-head,.task-row,.project-row,.request-row,.member-row,.approval-row{flex-direction:column;align-items:stretch}.wp-frame{grid-template-columns:1fr}.wp-sidebar{height:auto;position:static}.tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.wp-content{padding:18px}.metric-grid,.filters,.field-grid,.board,.mypage-grid,.profile-summary,.system-log-storage{grid-template-columns:1fr}.dashboard-tree-row{grid-template-columns:18px minmax(0,1fr)}.dashboard-tree-row .badge,.dashboard-tree-row .tree-assignee{justify-self:start}.approval-actions{width:100%}.approval-button-row{justify-content:flex-start}.approval-main .task-list-title{grid-template-columns:1fr}.auth-panel{margin:24px 14px;padding:24px}.task-list-title strong{width:100%;min-width:0}}
