@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&family=Crimson+Pro:ital,wght@0,300;0,400;0,600;1,400&display=swap";:root{--text-primary: #2c1a0e;--text-secondary: #6b3f1f;--text-muted: #a0714f;--text-disabled: #c9a882;--bg-base: #ffffff;--bg-surface: #fdf6ee;--bg-raised: #f5e8d4;--bg-hover: #eedec4;--border: #e0c8a8;--border-subtle: #eedcbc;--border-strong: #c8922a;--gold: #d4860a;--gold-dim: #b8720a;--amber: #e07010;--green: #2d7a3a;--red: #c0392b;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--shadow-card: 0 2px 12px rgba(100,60,20,.1);--shadow-hover: 0 6px 24px rgba(100,60,20,.16)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Crimson Pro,Georgia,serif;background:var(--bg-base);color:var(--text-primary);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.025'/%3E%3C/svg%3E");pointer-events:none;z-index:0;opacity:.3}.app{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:0 24px 100px}.header{padding:22px 0 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--bg-base);z-index:100;gap:20px}.header:before{content:"";position:absolute;top:0;left:-24px;right:-24px;height:3px;background:linear-gradient(90deg,transparent,var(--gold),var(--amber),transparent);opacity:.6}.logo{font-family:Playfair Display,serif;font-size:26px;font-weight:900;color:var(--gold);letter-spacing:-.5px;display:flex;align-items:center;gap:10px;flex-shrink:0}.logo-icon{font-size:28px;filter:drop-shadow(0 0 8px rgba(212,134,10,.35))}.nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.nav-btn{background:none;border:1px solid transparent;color:var(--text-secondary);font-family:Crimson Pro,serif;font-size:15px;font-weight:600;padding:7px 15px;border-radius:var(--radius-sm);cursor:pointer;transition:all .18s;position:relative;white-space:nowrap}.nav-btn:hover{color:var(--text-primary);border-color:var(--border);background:var(--bg-raised)}.nav-btn.active{color:var(--gold);background:var(--bg-raised);border-color:var(--border-strong);font-weight:700}.alert-badge{position:absolute;top:3px;right:6px;background:var(--amber);color:#fff;font-size:10px;border-radius:var(--radius-pill);padding:0 5px;min-width:16px;text-align:center;line-height:16px;font-family:system-ui,sans-serif}.section-title{font-family:Playfair Display,serif;font-size:36px;font-weight:900;color:var(--text-primary);margin:40px 0 6px;line-height:1.15;letter-spacing:-.3px}.section-sub{font-size:17px;color:var(--text-muted);margin-bottom:32px;font-style:italic}.btn{font-family:Crimson Pro,serif;font-size:15px;padding:9px 20px;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all .18s;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:linear-gradient(135deg,#c47a0a,#e8960a);color:#fff;box-shadow:0 2px 8px #d4860a4d}.btn-primary:hover{background:linear-gradient(135deg,#d48a10,#f0a010);transform:translateY(-1px);box-shadow:0 4px 14px #d4860a66}.btn-primary:active{transform:translateY(0)}.btn-outline{background:transparent;border:1px solid var(--border-strong);color:var(--text-secondary);font-weight:700}.btn-outline:hover{border-color:var(--gold);color:var(--text-primary);background:var(--bg-raised)}.btn-danger{background:transparent;border:1px solid #e8c4c4;color:#a04040}.btn-danger:hover{background:#fdf0f0;border-color:#c0392b;color:var(--red)}.btn-sm{padding:5px 12px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.field-group{display:flex;flex-direction:column;gap:6px}.field-label{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-secondary);font-family:Crimson Pro,serif;font-weight:700}.field-input{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Crimson Pro,serif;font-size:16px;font-weight:600;padding:10px 14px;transition:border-color .18s,box-shadow .18s;outline:none;width:100%}.field-input:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px #d4860a1f}.field-input::placeholder{color:var(--text-disabled)}textarea.field-input{min-height:80px;resize:vertical}select.field-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.divider{border:none;border-top:1px solid var(--border-subtle);margin:32px 0}.full-span{grid-column:1 / -1}.empty-state{text-align:center;padding:80px 20px}.empty-icon{font-size:56px;margin-bottom:16px;opacity:.4}.empty-text{font-size:18px;font-style:italic;color:var(--text-muted)}.pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}.recipe-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px 20px;transition:all .25s;position:relative;overflow:hidden;box-shadow:var(--shadow-card)}.recipe-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--gold) 40%,var(--amber) 70%,transparent 100%);opacity:0;transition:opacity .25s}.recipe-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:var(--shadow-hover)}.recipe-card:hover:before{opacity:1}.recipe-card-name{font-family:Playfair Display,serif;font-size:21px;font-weight:700;color:var(--text-primary);margin-bottom:3px;line-height:1.2}.recipe-card-style{font-size:14px;color:var(--text-muted);font-style:italic;margin-bottom:14px}.recipe-stats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.stat-pill{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-pill);padding:3px 11px;font-size:12px;color:var(--text-secondary);font-weight:600;display:flex;align-items:center;gap:5px}.stat-pill span{color:var(--gold);font-weight:700;font-size:13px}.recipe-actions{display:flex;gap:8px;margin-top:18px}.new-recipe-card{background:transparent;border:2px dashed var(--border);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;cursor:pointer;transition:all .25s;color:var(--text-disabled)}.new-recipe-card:hover{border-color:var(--border-strong);color:var(--text-secondary);background:var(--bg-surface)}.new-recipe-icon{font-size:38px;margin-bottom:10px}.new-recipe-label{font-size:16px;font-style:italic;font-weight:600}.builder{padding-top:32px}.builder-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:32px}.steps-section{margin-top:32px}.steps-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.steps-title{font-family:Playfair Display,serif;font-size:22px;font-weight:700;color:var(--text-primary)}.template-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:14px 16px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center}.template-btn{background:var(--bg-raised);border:1px solid var(--border);color:var(--text-secondary);font-family:Crimson Pro,serif;font-size:14px;font-weight:700;padding:6px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:all .18s}.template-btn:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--bg-hover)}.session{padding-top:32px}.session-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px;gap:20px}.session-name{font-family:Playfair Display,serif;font-size:32px;font-weight:900;color:var(--text-primary);line-height:1.15}.stage-section{margin-bottom:28px}.stage-header{display:flex;align-items:center;gap:10px;padding:11px 18px;border-radius:var(--radius-md) var(--radius-md) 0 0;margin-bottom:2px}.stage-icon{font-size:20px}.stage-label{font-family:Playfair Display,serif;font-size:19px;font-weight:700}.step-row{background:var(--bg-surface);border:1px solid var(--border);border-top:none;padding:14px 20px;margin-bottom:0;display:flex;align-items:center;gap:16px;transition:background .18s}.step-row:last-child{border-radius:0 0 var(--radius-md) var(--radius-md)}.step-row:hover{background:var(--bg-raised)}.step-info{flex:1;min-width:0}.step-name{font-size:17px;color:var(--text-primary);font-weight:700;line-height:1.3}.step-note{font-size:14px;color:var(--text-muted);font-style:italic;margin-top:3px;line-height:1.4}.timer-display{font-family:Playfair Display,serif;font-size:22px;font-weight:700;color:var(--gold);min-width:90px;text-align:center;letter-spacing:1px}.timer-running{color:var(--green)}.timer-done{color:var(--text-disabled)}.timer-progress{width:90px;height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin:5px auto 0}.timer-progress-bar{height:100%;background:linear-gradient(90deg,var(--gold),var(--amber));border-radius:2px;transition:width 1s linear}.alerts-view{padding-top:32px}.alert-item{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 20px;margin-bottom:10px;display:flex;align-items:center;gap:16px;animation:alertIn .35s ease}@keyframes alertIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}.alert-active{border-color:var(--amber);background:#fff8ee;box-shadow:0 0 20px #e070101f}.alert-stage-icon{font-size:26px}.alert-info{flex:1}.alert-step-name{font-family:Playfair Display,serif;font-size:18px;font-weight:700;color:var(--text-primary)}.alert-meta{font-size:13px;color:var(--text-muted);margin-top:3px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}::selection{background:#d4860a33;color:var(--text-primary)}@media (max-width: 700px){.builder-grid{grid-template-columns:1fr}.section-title{font-size:28px}.session-name{font-size:26px}.recipe-grid{grid-template-columns:1fr}.app{padding:0 16px 80px}}
