:root{--color-bg-primary: #f8f9fa;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f1f3f5;--color-text-primary: #1a1d21;--color-text-secondary: #6c757d;--color-text-accent: #339af0;--color-accent: #228be6;--color-accent-hover: #1c7ed6;--color-danger: #fa5252;--color-success: #40c057;--color-warning: #fab005;--color-bg-danger-subtle: #fff5f5;--color-bg-danger-subtle-hover: #ffe3e3;--color-bg-warning-subtle: #fff9db;--color-bg-warning-subtle-hover: #fff3bf;--color-bg-accent-subtle: rgba(34, 139, 230, .08);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .025);--shadow-float: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--border-color: #dee2e6;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--font-family: "Inter", system-ui, -apple-system, sans-serif}[data-theme=dark]{--color-bg-primary: #101113;--color-bg-secondary: #1a1b1e;--color-bg-tertiary: #25262b;--color-text-primary: #c1c2c5;--color-text-secondary: #909296;--color-accent: #339af0;--color-accent-hover: #4dabf7;--color-danger: #ff6b6b;--color-success: #51cf66;--color-warning: #fcc419;--color-bg-danger-subtle: rgba(250, 82, 82, .15);--color-bg-danger-subtle-hover: rgba(250, 82, 82, .25);--color-bg-warning-subtle: rgba(255, 212, 59, .15);--color-bg-warning-subtle-hover: rgba(255, 212, 59, .25);--color-bg-accent-subtle: rgba(51, 154, 240, .15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -2px rgba(0, 0, 0, .2);--shadow-float: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .2);--border-color: #2c2e33}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}.container{max-width:1200px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-weight:500;cursor:pointer;border:none;transition:all .2s ease;font-size:14px}.btn-primary{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover));color:#fff;box-shadow:0 2px 4px #228be64d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 8px #228be666}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--border-color)}.btn-danger{background:var(--color-bg-danger-subtle);color:var(--color-danger)}.btn-danger:hover{background:var(--color-bg-danger-subtle-hover)}.btn-warning{background:var(--color-bg-warning-subtle);color:var(--color-warning)}.btn-warning:hover{background:var(--color-bg-warning-subtle-hover)}.input-group{margin-bottom:20px}.label{display:block;font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.input,.select,.textarea{width:100%;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--color-bg-secondary);font-family:inherit;font-size:15px;transition:all .2s;color:var(--color-text-primary)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #228be61a}.card{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-md)}.app-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:var(--color-bg-secondary);border-right:1px solid var(--border-color);padding:24px;position:sticky;top:0;height:100vh}.main-content{padding:40px}.logo{font-size:20px;font-weight:800;color:var(--color-accent);margin-bottom:40px;display:flex;align-items:center;gap:10px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);color:var(--color-text-secondary);text-decoration:none;margin-bottom:8px;font-weight:500;transition:all .2s}.nav-item:hover,.nav-item.active{background:var(--color-bg-accent-subtle);color:var(--color-accent)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:32px;width:90%;max-width:650px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-float);animation:slideUp .3s cubic-bezier(.16,1,.3,1);color:var(--color-text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-title{font-size:28px;font-weight:700;letter-spacing:-.5px}.template-grid,.category-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.tag{display:inline-block;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.template-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.template-name{font-weight:600;font-size:16px}.template-preview{font-size:14px;color:var(--color-text-secondary);margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;line-height:1.6;-webkit-box-orient:vertical;overflow:hidden}.var-dropdown-container{position:relative;display:inline-block}.var-dropdown-menu{position:absolute;top:100%;right:0;background:var(--color-bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);width:200px;max-height:200px;overflow-y:auto;z-index:10;margin-top:8px}.var-dropdown-item{padding:8px 16px;cursor:pointer;font-size:14px;transition:background .1s;color:var(--color-text-primary)}.var-dropdown-item:hover{background:var(--color-bg-tertiary);color:var(--color-accent)}
