:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102a27;background:#f7faf9;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f7faf9}button,input,textarea,select{font:inherit}button{border:1px solid #e2e8e6;background:#fff;color:#102a27;border-radius:8px;padding:10px 12px;display:inline-flex;align-items:center;gap:8px;cursor:pointer}button:hover{border-color:#24786d}button.primary{background:#24786d;color:#fff;border-color:#24786d}button:disabled{opacity:.55;cursor:not-allowed}.app{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:#102a27;color:#fff;padding:22px;display:flex;flex-direction:column;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border-radius:8px;display:grid;place-items:center;background:#24786d;font-weight:800}.brand span{display:block;color:#b8cfca;font-size:13px;margin-top:2px}nav{display:grid;gap:8px}nav button{color:#d9e7e4;background:transparent;border-color:transparent;justify-content:flex-start}nav button.active,nav button:hover{background:#ffffff14;border-color:#ffffff1f;color:#fff}.privacy{margin-top:auto;color:#d9e7e4;font-size:13px;line-height:1.45;display:flex;gap:8px}main{padding:26px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}h1,h2,h3,p{margin-top:0}h1{font-size:26px;margin-bottom:6px}h2{font-size:20px;margin-bottom:6px}h3{font-size:16px}.topbar p,.detail-head p{color:#5b6f6b;margin-bottom:0}.mode{padding:8px 10px;border-radius:999px;border:1px solid #e2e8e6;background:#fff;font-size:13px;white-space:nowrap}.mode.desktop{color:#24786d}.mode.browser{color:#d97706}.stack{display:grid;gap:18px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric,.panel{background:#fff;border:1px solid #e2e8e6;border-radius:8px}.metric{padding:18px;display:grid;gap:8px}.metric span{color:#5b6f6b;font-size:13px}.metric strong{font-size:28px}.panel{padding:18px}.panel-head,.detail-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.panel-head span{color:#5b6f6b}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #e2e8e6;font-size:14px}tbody tr{cursor:pointer}tbody tr:hover{background:#f7faf9}.badge{display:inline-flex;border-radius:999px;padding:4px 8px;background:#eef7f5;color:#24786d;font-size:12px}.form{display:grid;gap:14px;max-width:820px}label{display:grid;gap:7px;color:#415854;font-size:14px}input,textarea,select{width:100%;border:1px solid #d8e2df;border-radius:8px;padding:11px 12px;background:#fff;color:#102a27}textarea{min-height:110px;resize:vertical}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.browser-notice,.notice{margin-bottom:18px;padding:14px 16px;border-radius:8px;border:1px solid #f0d5a8;background:#fff8eb;color:#7c4a03;display:flex;align-items:center;gap:12px}.browser-notice{display:grid}.notice button{margin-left:auto;padding:6px 10px}.empty{min-height:160px;display:grid;place-content:center;text-align:center;color:#5b6f6b}.empty strong{color:#102a27}.actions{display:flex;gap:10px;flex-wrap:wrap}.tabs{display:flex;gap:8px;overflow-x:auto}.tabs button.active{background:#102a27;color:#fff;border-color:#102a27}.check-row,.file-row,.reminder-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #e2e8e6}.check-row:last-child,.file-row:last-child,.reminder-row:last-child{border-bottom:0}.check-row p,.file-row p,.reminder-row p{margin:4px 0 0;color:#5b6f6b;font-size:13px}.check-row select{max-width:170px}.file-row{justify-content:flex-start}.file-row button{margin-left:auto}.file-row button+button{margin-left:0}.file-block{border-bottom:1px solid #e2e8e6;padding-bottom:12px;margin-bottom:12px}.file-block:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.text-preview{margin:8px 0 0 34px;border:1px solid #e2e8e6;border-radius:8px;background:#f7faf9}.text-preview summary{cursor:pointer;padding:10px 12px;display:flex;gap:8px;align-items:center;color:#24786d}.text-preview pre{margin:0;padding:12px;max-height:260px;overflow:auto;white-space:pre-wrap;font-size:12px;color:#102a27;border-top:1px solid #e2e8e6}.overdue{color:#dc2626}.overdue p{color:#9f1239}.answer{background:#f7faf9;border:1px solid #e2e8e6;border-radius:8px;padding:14px;white-space:pre-wrap}.chat-log{display:grid;gap:10px;max-height:420px;overflow:auto}.chat-message{padding:12px 14px;border-radius:8px;border:1px solid #e2e8e6;background:#fff}.chat-message.user{background:#eef7f5;border-color:#cfe8e3}.chat-message.assistant{background:#f7faf9}.chat-message strong{display:block;margin-bottom:6px;font-size:13px;color:#24786d}.chat-message p{margin:0;white-space:pre-wrap;line-height:1.5}.success{color:#16a34a;display:flex;align-items:center;gap:8px}.legal{color:#5b6f6b;line-height:1.5}ul{padding-left:18px;margin-bottom:0}li{margin-bottom:8px}@media (max-width: 900px){.app{grid-template-columns:1fr}.sidebar{position:static}.metrics,.grid.two{grid-template-columns:1fr}.topbar,.panel-head,.detail-head{align-items:stretch;flex-direction:column}}
