:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#171717;background:#f5f5f0;line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f5f5f0;background:radial-gradient(circle at 20% 50%,rgba(51,154,128,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(158,36,61,.06) 0%,transparent 50%),linear-gradient(135deg,#fff,#f5f5f0,#e8e8e0);background-attachment:fixed;color:#171717}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}#root{min-height:100vh}.app-sidebar-brand-mark{display:block;width:100%;max-width:100px;height:auto;margin:8px auto 4px;opacity:.9;align-self:center}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.app-sidebar{display:flex;flex-direction:column;border-right:1px solid #d4d1c7;background:#efede5}.app-brand{display:grid;gap:10px;padding:18px 18px 16px;border-bottom:1px solid #d4d1c7}.app-brand-logo{width:100%;max-width:120px;height:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.1))}.app-brand-title{margin:0;font-size:1.1rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.05)}.app-nav{display:grid;gap:6px;padding:20px 12px}.app-nav-item{padding:12px 14px;border-radius:12px;color:#55524b;transition:background-color .2s ease,color .2s ease}.app-nav-item:hover,.app-nav-item-active{background:#fff;color:#134d86}.app-sidebar-foot{margin-top:auto;display:grid;gap:12px;padding:20px;border-top:1px solid #d4d1c7}.app-user-chip{display:inline-flex;align-items:center;gap:10px;padding:10px 12px;border-radius:999px;background:#fff;font-size:.92rem;color:#44423d}.app-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:#dcecff;color:#12477c;font-size:.78rem;font-weight:700}.app-user-copy{display:grid}.app-user-copy small{color:#6f6b63}.app-logout-button{width:100%}.app-main{padding:28px 28px 88px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.page-header-actions{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.page-title{margin:0;font-size:1.6rem}.page-subtitle{margin:0 0 6px;font-size:.9rem;color:#6f6b63}.page-copy{margin:8px 0 0;max-width:640px;color:#57544d}.primary-button,.secondary-button,.button-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:0;border-radius:12px;cursor:pointer;transition:transform .2s ease,opacity .2s ease,background-color .2s ease}.primary-button:disabled,.secondary-button:disabled,.button-danger:disabled,.icon-button:disabled,.text-button:disabled{cursor:not-allowed;opacity:.65}.primary-button{background:#185fa5;color:#fff}.secondary-button{background:#e8f0fa;color:#134d86}.button-danger{background:#fbe8e6;color:#8c2f25}.button-danger:hover{background:#f6d9d4;transform:translateY(-1px)}.text-button,.icon-button{border:0;cursor:pointer;background:transparent}.text-button{color:#134d86}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;color:#57544d}.icon-button:hover{background:#f5f4ef}.panel{background:#fff;border:1px solid #d4d1c7;border-radius:18px;padding:20px}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.task-card-rename{margin-left:auto;cursor:pointer;font-size:.95rem;color:#6f6b63;padding:2px 6px;border-radius:6px;-webkit-user-select:none;user-select:none}.task-card-rename:hover{background:#0000000f;color:#171717}.app-foot-actions{display:flex;flex-direction:column;gap:8px}.folder-section{margin-bottom:12px;padding:6px 8px 8px;border-radius:12px;border:1px dashed transparent;transition:background .15s ease,border-color .15s ease}.folder-section-drop{background:#339a8014;border-color:#339a8080}.folder-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.folder-toggle{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;padding:6px 4px;cursor:pointer;color:inherit;font-size:1.05rem;font-weight:600;border-radius:6px}.folder-toggle:hover{background:#0000000a}.folder-caret{display:inline-block;width:12px;color:#6f6b63;font-size:.9rem}.folder-count{color:#6f6b63;font-size:.85rem;font-weight:400}.folder-empty{padding:12px 4px;margin:0}.project-card[draggable=true]{cursor:grab}.project-card[draggable=true]:active{cursor:grabbing}.project-card{display:grid;gap:12px;padding:18px;border:1px solid #d4d1c7;border-radius:18px;background:#fff;transition:transform .2s ease,border-color .2s ease}.project-card-main{display:grid;gap:12px;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.project-card:hover{transform:translateY(-2px);border-color:#a4afbc}.project-card-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.project-card-board-link{padding:8px 12px}.project-card-title{margin:0;font-size:1rem}.project-card-copy{margin:0;color:#64615a;font-size:.95rem}.project-meta{display:flex;justify-content:space-between;gap:12px;font-size:.88rem;color:#6f6b63}.panel-actions{display:flex;gap:10px;flex-wrap:wrap}.badge-row{display:flex;gap:8px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:600}.badge-blue{background:#e6f1fb;color:#12477c}.badge-green{background:#e8f3dd;color:#335f10}.badge-amber{background:#faeed9;color:#71440f}.badge-gray{background:#eceae3;color:#5d5a54}.badge-red{background:#fbe8e6;color:#8c2f25}.board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.board-column{display:grid;gap:12px;align-content:start}.board-inline-note,.board-inline-error{margin-bottom:16px}.board-column-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#eceae3;font-weight:600}.board-column-header-actions{display:inline-flex;align-items:center;gap:10px}.board-column-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:999px;background:#fff;color:#5d5a54;font-size:.84rem}.board-drop-zone{min-height:10px;border-radius:999px;transition:background-color .2s ease,min-height .2s ease}.board-drop-zone-active{min-height:18px;background:#185fa524}.task-card{display:grid;gap:10px;padding:16px;border:1px solid #d4d1c7;border-radius:16px;background:#fff}.task-card-button{width:100%;text-align:left;cursor:pointer;transition:transform .2s ease,border-color .2s ease}.task-card-button:hover{transform:translateY(-1px);border-color:#9db1c8}.task-card-dragging{opacity:.5;border-style:dashed}.task-card-title{margin:0;font-size:1rem}.task-card-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#64615a;font-size:.88rem}.task-due{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:600}.task-due-normal{background:#e9f2e2;color:#335f10}.task-due-late{background:#fbe8e6;color:#8c2f25}.task-due-muted{background:#eceae3;color:#5d5a54}.task-empty{padding:16px;border:1px dashed #c3beb2;border-radius:16px;text-align:center;color:#77736b;background:#f8f7f2}.detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px}.info-list{display:grid;gap:12px}.info-row{display:grid;gap:4px}.info-label{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#6f6b63}.info-value{font-size:.98rem;color:#1f1d1a}.member-list{display:flex;gap:8px;flex-wrap:wrap}.member-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f1efe9;color:#44423d;font-size:.88rem}.users-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #d4d1c7;border-radius:18px;overflow:hidden}.users-table th,.users-table td{padding:14px 16px;text-align:left;border-bottom:1px solid #eceae3}.users-table th{font-size:.86rem;color:#5d5a54;background:#f8f7f2}.users-table tr:last-child td{border-bottom:0}.users-table-actions{width:1%;white-space:nowrap}.login-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:24px}.login-footer{margin-top:auto;padding:24px 0 12px;text-align:center}.login-footer-logo{width:min(28vw,140px);height:auto;opacity:.9}.login-stack{width:min(100%,360px);display:grid;gap:22px;justify-items:center}.login-card{width:100%;display:grid;gap:18px;padding:0;border:none;background:transparent;box-shadow:none}.login-logo{display:block;width:100%;max-width:250px;height:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.1))}.login-title{margin:0;font-size:1.7rem;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.05)}.login-card .primary-button{min-width:112px;justify-self:center;margin-top:2px;background:#9e243d;color:#fff;box-shadow:0 4px 15px #0003}.login-card .primary-button:hover{transform:translateY(-2px);background:#7a1c38;box-shadow:0 6px 20px #0000004d}.field-group{display:grid;gap:8px;margin-bottom:16px}.login-card .field-group{gap:10px;margin-bottom:0}.login-card .field-label{text-align:center;font-weight:600;color:#666159}.login-card .field-input{border:none;border-radius:14px;background:#fffffff5;box-shadow:0 8px 24px #0000001f;text-align:center}.login-card .field-input::placeholder{color:#7a786f}.login-card .field-input:focus{box-shadow:0 0 5px #339a804d,0 10px 26px #00000024;transform:translateY(-1px)}.login-card .form-error{text-align:center}.field-label{font-size:.9rem;color:#514f48}.field-input{width:100%;padding:12px 14px;border:1px solid #c6c2b7;border-radius:14px;background:#fff;color:#1f1d1a;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.field-input:focus{outline:none;border-color:#339a8073;box-shadow:0 0 5px #339a804d}.field-textarea{min-height:120px;resize:vertical}.field-helper{margin:0;color:#6f6b63;font-size:.88rem}.form-error{margin:0;color:#8c2f25;font-size:.9rem}.form-grid{display:grid;gap:16px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}.checkbox-list{display:grid;gap:10px;padding:12px;border:1px solid #e1ddd2;border-radius:14px;background:#fbfaf7}.checkbox-item{display:flex;align-items:center;gap:10px;color:#44423d}.checkbox-item small{color:#6f6b63}.standalone-state{display:grid;place-items:center;min-height:100vh;padding:24px}.status-state{display:grid;gap:16px;padding:24px;border:1px solid #d4d1c7;border-radius:18px;background:#fff}.status-state-mark{width:40px;height:40px;border-radius:14px;background:#dcecff}.status-state-loading .status-state-mark{background:#e6f1fb}.status-state-error .status-state-mark{background:#fbe8e6}.status-state-content{display:grid;gap:8px}.status-state-title{margin:0;font-size:1.15rem}.status-state-copy{margin:0;color:#57544d}.status-state-action{display:flex;flex-wrap:wrap;gap:10px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;background:#17171766;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-card{width:min(100%,760px);max-height:calc(100vh - 48px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid #d4d1c7;border-radius:22px;background:#fff;overflow:hidden}.modal-header,.modal-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid #eceae3}.modal-footer{justify-content:flex-end;align-items:center;border-top:1px solid #eceae3;border-bottom:0}.modal-title{margin:0;font-size:1.25rem}.modal-copy{margin:8px 0 0;color:#64615a}.modal-body{padding:24px;overflow:auto}.card-detail-stack{display:grid;gap:24px}.card-section{display:grid;gap:14px;padding-top:6px;border-top:1px solid #eceae3}.card-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-section-title{margin:0;font-size:1rem}.card-section-title span{font-weight:500;color:#6f6b63}.checklist-list,.comment-list{display:grid;gap:10px}.checklist-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #e6e1d7;border-radius:14px;background:#fbfaf7}.checklist-main{display:flex;align-items:center;gap:10px;min-width:0}.checklist-title{color:#1f1d1a;word-break:break-word}.checklist-title-done{color:#6f6b63;text-decoration:line-through}.checklist-actions{display:inline-flex;align-items:center;gap:6px}.checklist-inline-input{min-width:220px}.inline-form{display:flex;gap:12px;align-items:center}.inline-form-end{justify-content:flex-end}.comment-item{display:grid;gap:8px;padding:14px;border:1px solid #e6e1d7;border-radius:14px;background:#fbfaf7}.comment-header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#6f6b63;font-size:.85rem}.comment-content{margin:0;color:#1f1d1a;white-space:pre-wrap;word-break:break-word}.comment-textarea{min-height:96px}.stack{display:grid;gap:16px}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid #d4d1c7}.board-grid,.detail-grid{grid-template-columns:1fr}.page-header,.modal-header,.modal-footer{flex-direction:column}.form-row,.form-row-3,.checklist-item,.inline-form,.comment-header{grid-template-columns:1fr}.checklist-item,.inline-form,.comment-header{display:grid}.checklist-inline-input{min-width:0}}@media (max-width: 640px){.app-main{padding:20px 20px 84px}.login-page{padding-top:32px}.login-card{gap:16px}}
