:root{--c-bg: #ffffff;--c-surface: #ffffff;--c-text: #2b2b2b;--c-subtext: #666666;--c-accent: #d4a373;--c-accent-hover: #bc8a5f;--c-border: #e0e0e0;--c-danger: #e63946;--font-heading: "Cinzel", serif;--font-body: "Inter", sans-serif;--font-mono: "Consolas", "Monaco", monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-xxl: 64px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-float: 0 10px 30px rgba(0, 0, 0, .1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px}body{background:var(--c-bg);color:var(--c-text);font-family:var(--font-body);margin:0;overflow:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;margin-top:0;margin-bottom:var(--space-md);color:var(--c-text);letter-spacing:-.02em}p{line-height:1.6;margin-bottom:var(--space-md)}a{color:var(--c-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--c-accent-hover)}button{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm)}button:hover{border-color:var(--c-accent);color:var(--c-accent);transform:translateY(-1px);box-shadow:var(--shadow-md)}button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button.primary{background:var(--c-accent);color:#fff;border-color:var(--c-accent);font-weight:600}button.primary:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);color:#fff}button.danger{border-color:var(--c-danger);color:var(--c-danger)}button.danger:hover{background:var(--c-danger);color:#fff}button.small{padding:4px 8px;font-size:.8rem}input,select,textarea{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text);padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;transition:border-color .2s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--c-accent)}.text-accent{color:var(--c-accent)}.text-sub{color:var(--c-subtext)}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.flex-col{display:flex;flex-direction:column}.flex-row{display:flex;flex-direction:row}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.w-full{width:100%}.tool-layout{display:flex;width:100%;height:100%;overflow:hidden}.tool-sidebar{width:280px;background:var(--c-surface);border-right:1px solid var(--c-border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.tool-content{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--c-bg)}.tool-toolbar{height:48px;display:flex;align-items:center;padding:0 var(--space-md);border-bottom:1px solid var(--c-border);background:var(--c-surface);gap:var(--space-md);flex-shrink:0}
