@tailwind base;@tailwind components;@tailwind utilities;:root{--bg: #f0fdfa;--surface: #ffffff;--surface-2: #f1f5f9;--surface-3: #e2e8f0;--border: #5eead4;--border-soft: #e2e8f0;--text: #134e4a;--text-secondary: #475569;--text-tertiary: #94a3b8;--text-muted: #cbd5e1;--primary: #0d9488;--primary-soft: #ccfbf1;--primary-hover: #0f766e;--accent: #d97706;--accent-soft: #fef3c7;--accent-hover: #b45309;--success-bg: #f0fdf4;--success: #16a34a;--warning-bg: #fefce8;--warning: #ca8a04;--danger-bg: #fef2f2;--danger: #dc2626;--info-bg: #eff6ff;--info: #2563eb;--input-bg: #f8fafc;--input-border: #e2e8f0;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 16px rgba(0,0,0,.08);--shadow-lg: 0 20px 60px rgba(0,0,0,.15);--topbar-bg: #ffffff;--sidebar-bg: #ffffff}[data-theme=dark]{--bg: #0d1117;--surface: #1c2128;--surface-2: #22272e;--surface-3: #2d333b;--border: #2dd4bf;--border-soft: #373e47;--text: #f0fdfa;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-muted: #475569;--primary: #2dd4bf;--primary-soft: #134e4a;--primary-hover: #5eead4;--accent: #fbbf24;--accent-soft: #451a03;--accent-hover: #fcd34d;--success-bg: #1a2e1a;--success: #56d364;--warning-bg: #2b2200;--warning: #e3b341;--danger-bg: #2d1217;--danger: #ff7b72;--info-bg: #112233;--info: #79c0ff;--input-bg: #21262d;--input-border: #30363d;--shadow-sm: 0 1px 4px rgba(0,0,0,.5);--shadow-md: 0 4px 20px rgba(0,0,0,.6);--shadow-lg: 0 24px 80px rgba(0,0,0,.8);--topbar-bg: #1c2128;--sidebar-bg: #1c2128}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:DM Sans,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .2s ease,color .2s ease}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none}.input{width:100%;padding:.5rem .75rem;border-radius:.5rem;border:1px solid var(--input-border);background-color:var(--input-bg);font-size:.875rem;color:var(--text);font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s,background-color .15s}.input::placeholder{color:var(--text-tertiary)}.input:hover:not(:disabled){border-color:var(--border-soft)}.input:focus{border-color:var(--primary);background-color:var(--surface);box-shadow:0 0 0 3px #6366f126}.input:disabled{opacity:.55;cursor:not-allowed}textarea.input{resize:vertical;min-height:80px}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.card{background-color:var(--surface);border-radius:1rem;border:1px solid var(--border);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background-color:var(--surface-2);color:var(--text-secondary);font-size:.78rem;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:.85rem;font-weight:600;font-family:inherit;border:none;cursor:pointer;transition:all .15s;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--text);color:var(--surface)}.btn-primary:hover:not(:disabled){opacity:.85}.btn-secondary{background:var(--surface-2);color:var(--text-secondary);border:1px solid var(--border-soft)}.btn-secondary:hover:not(:disabled){background:var(--surface-3)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){opacity:.88}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin .7s linear infinite}.animate-fade-in{animation:fade-in .2s ease}.animate-slide-up{animation:slide-up .2s ease}.animate-pulse{animation:pulse 1.5s ease-in-out infinite}.memo-body h1{font-size:1.5rem;font-weight:700;margin:1rem 0 .5rem;line-height:1.3}.memo-body h2{font-size:1.25rem;font-weight:600;margin:.875rem 0 .5rem;line-height:1.3}.memo-body h3{font-size:1.1rem;font-weight:600;margin:.75rem 0 .375rem}.memo-body h4{font-size:1rem;font-weight:600;margin:.625rem 0 .25rem}.memo-body h5{font-size:.9rem;font-weight:600;margin:.5rem 0 .25rem}.memo-body h6{font-size:.8rem;font-weight:600;margin:.5rem 0 .25rem;color:var(--text-secondary)}.memo-body p{margin:.5rem 0}.memo-body ul{padding-left:1.5rem;list-style:disc;margin:.5rem 0}.memo-body ol{padding-left:1.5rem;list-style:decimal;margin:.5rem 0}.memo-body li{margin:.125rem 0}.memo-body blockquote{border-left:3px solid var(--primary);padding-left:1rem;margin:.75rem 0;color:var(--text-secondary);font-style:italic}.memo-body pre{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;padding:.75rem 1rem;font-family:Courier New,monospace;font-size:.85rem;overflow-x:auto;margin:.75rem 0}.memo-body code{background:var(--surface-2);border-radius:3px;padding:.15em .35em;font-family:Courier New,monospace;font-size:.9em;color:var(--primary)}.memo-body pre code{background:none;padding:0;color:inherit}.memo-body a{color:var(--primary);text-decoration:underline}.memo-body img{max-width:100%;height:auto;border-radius:6px;margin:.5rem 0}.memo-body hr{border:none;border-top:2px solid var(--border-soft);margin:1rem 0}.memo-body table{border-collapse:collapse;width:100%;margin:.75rem 0}.memo-body table th,.memo-body table td{border:1px solid var(--border-soft);padding:.5rem .75rem;text-align:left}.memo-body table th{background:var(--surface-2);font-weight:600}
