:root{color-scheme:light;--bg:#f6f7f4;--panel:#ffffff;--ink:#1b1f23;--muted:#667085;--line:#d8ddd4;--accent:#24745a;--accentDark:#165642;--blue:#2f5fb3;--warn:#b35c1e;--shadow:0 18px 50px rgba(27,31,35,0.1)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}.appShell{display:grid;place-items:start center;min-height:100vh;padding:28px}.workspace{width:min(840px,100%);margin:0 auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}h1,h2{margin:0}h1{color:var(--accentDark);font-size:clamp(30px,4vw,46px);line-height:1;letter-spacing:0}h2{font-size:17px}.googleButton{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:#3167d5;font-weight:900;text-decoration:none;box-shadow:0 8px 24px rgba(27,31,35,.08)}.loginPanel{gap:12px}.loginPanel p{margin:0;color:var(--muted);line-height:1.5}.ghostLink,.loginButton{display:inline-grid;min-height:44px;width:-moz-fit-content;width:fit-content;place-items:center;border-radius:8px;padding:0 18px;background:var(--accent);color:#ffffff;font-weight:900;text-decoration:none}.ghostLink{border:1px solid var(--line);background:#ffffff;color:var(--ink)}.editorGrid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);grid-gap:18px;gap:18px}.editorGrid.compact{grid-template-columns:1fr}.formPanel{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);display:grid;grid-gap:18px;gap:18px;padding:20px}.fieldRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}label{display:grid;grid-gap:8px;gap:8px;color:var(--muted);font-size:14px;font-weight:800}.editorLabel{grid-template-columns:1fr auto;align-items:center}.editorLabel textarea{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fbfcfa;color:var(--ink);outline:none}input{padding:0 12px}input,select{min-height:44px}select{padding:0 38px 0 12px}textarea{min-height:150px;padding:12px;resize:vertical;line-height:1.55}.planInput{min-height:260px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(36,116,90,.13)}.draftToolbar{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:end}.draftToolbar,.toggleRow{border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfcfa}.toggleRow{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--ink)}.toggleRow small{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}.toggleRow input{width:48px;min-width:48px;height:28px;min-height:28px;accent-color:var(--accent)}.actions{display:flex;justify-content:flex-end;gap:10px}button{min-height:44px;border:0;border-radius:8px;padding:0 18px;cursor:pointer;font-weight:900}button[type=submit]{background:var(--accent);color:#ffffff}button[type=submit]:hover{background:var(--accentDark)}button:disabled{cursor:wait;opacity:.64}.ghost{border:1px solid var(--line);background:#ffffff;color:var(--ink)}.iconButton{display:grid;width:36px;height:36px;min-height:36px;place-items:center;border:1px solid var(--line);border-radius:8px;padding:0;background:#ffffff;color:var(--accentDark)}.iconButton:hover{border-color:var(--accent);background:#f2f8f5}.iconButton svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.markdownPreview{min-height:220px;padding:18px;line-height:1.65}.markdownPreview h1,.markdownPreview h2,.markdownPreview h3{margin:16px 0 8px;font-size:20px}.markdownPreview p{margin:8px 0}.markdownPreview ol,.markdownPreview ul{padding-left:24px}.backlogList{display:grid;grid-gap:10px;gap:10px;min-height:190px;margin:0;padding:18px;list-style:none}.backlogList li{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;padding:12px;background:#fbfcfa;line-height:1.45}.modalBackdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:24px;background:rgba(20,24,28,.46)}.modalPanel{width:min(920px,100%);max-height:min(760px,calc(100vh - 48px));overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 26px 80px rgba(11,18,25,.28)}.modalHeader{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:18px 20px}.modalHeader p{margin:0 0 5px;color:var(--accent);font-size:12px;font-weight:900;text-transform:uppercase}.closeButton{color:var(--ink)}.jiraPreview,.modalMarkdown{max-height:calc(100vh - 150px);overflow:auto}.jiraPreview{display:grid;grid-gap:14px;gap:14px;padding:18px;background:#f8faf7}.jiraGroup{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#ffffff}.jiraGroup h3{margin:0;border-bottom:1px solid var(--line);padding:13px 15px;color:var(--blue);font-size:15px}.jiraGroup ol{display:grid;grid-gap:0;gap:0;margin:0;padding:0;list-style:none}.jiraGroup li{display:grid;grid-template-columns:44px 1fr;grid-gap:12px;gap:12px;align-items:start;padding:13px 15px}.jiraGroup li+li{border-top:1px solid #edf0ea}.jiraGroup li span{display:grid;width:32px;height:32px;place-items:center;border-radius:8px;background:#edf5ff;color:var(--blue);font-size:12px;font-weight:900}.jiraGroup li p{margin:4px 0 0;line-height:1.5}.modalEmpty{margin:0;padding:24px;background:#ffffff;border:1px dashed var(--line);border-radius:8px}.empty{color:var(--muted)}.toast{position:fixed;right:22px;bottom:22px;max-width:min(560px,calc(100vw - 44px));border-radius:8px;padding:14px 16px;background:#1f2937;color:#ffffff;box-shadow:var(--shadow);line-height:1.45}.toast.warn{background:var(--warn)}.toast.success{background:var(--accentDark)}@media (max-width:920px){.appShell{padding:18px}.draftToolbar,.editorGrid,.fieldRow{grid-template-columns:1fr}.actions{flex-direction:column-reverse}button:not(.iconButton){width:100%}}