@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@700&display=swap";:root{--color-cocoa:#2c1810;--color-brown-dark:#3d2b1f;--color-brown-med:#5d4037;--color-gold:#c5a059;--color-gold-light:#e0c58e;--color-cream:#f9f5f0;--color-white:#fff;--color-error:#d32f2f;--color-success:#388e3c;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 12px #00000026;--shadow-lg:0 8px 24px #0003;--radius-sm:4px;--radius-md:12px;--radius-lg:20px;--font-main:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Playfair Display", serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--color-cream);color:var(--color-cocoa);-webkit-font-smoothing:antialiased;line-height:1.5}.show-on-pdf,.print-only-layout{display:none!important}@media print{@page{margin:0;size:auto}.print-only-layout{box-sizing:border-box;width:100%!important;padding:0 2cm!important;display:block!important}.show-on-pdf{display:block!important}body{background-color:#fff!important}.sidebar,.action-buttons,header>div[style*=absolute],.dashboard{display:none!important}.main-content{overflow:visible!important}.app-container{width:100%!important;max-width:100%!important;box-shadow:none!important;border:none!important;margin:0!important;padding:0!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.hide-on-pdf{display:none!important}}.app-container{max-width:1000px;margin:0 auto;padding:2rem 1rem}header{text-align:center;margin-bottom:3rem}h1{font-family:var(--font-display);color:var(--color-cocoa);letter-spacing:-.02em;margin-bottom:.5rem;font-size:2.5rem}.subtitle{color:var(--color-brown-med);text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;font-weight:500}.card{background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);border:1px solid #c5a05933;padding:2rem}.form-group{margin-bottom:1.5rem}label{color:var(--color-brown-dark);margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}input,select,textarea{border-radius:var(--radius-sm);background:var(--color-white);width:100%;color:var(--color-cocoa);border:2px solid #eee;padding:.75rem 1rem;font-size:1rem;transition:all .2s}input:hover,select:hover{border-color:#ddd}input:focus,select:focus{border-color:var(--color-gold);outline:none;box-shadow:0 0 0 4px #c5a0591a}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--color-cocoa);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-brown-dark);transform:translateY(-1px)}.btn-outline{border:2px solid var(--color-gold);color:var(--color-gold);background-color:#0000}.btn-outline:hover{background-color:var(--color-gold);color:var(--color-white)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s forwards fadeIn}.dashboard{background-color:var(--color-cream);width:100vw;min-height:100vh;display:flex}.sidebar{background:var(--color-white);z-index:10;border-right:1px solid #c5a05933;flex-direction:column;width:320px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto;box-shadow:2px 0 10px #00000005}.sidebar-header{background:var(--color-white);z-index:2;border-bottom:1px solid #c5a0591a;padding:1.5rem;position:sticky;top:0}.sidebar-header h2{font-family:var(--font-display);color:var(--color-cocoa);margin:0;font-size:1.25rem}.recipe-list{flex-direction:column;display:flex}.recipe-item{cursor:pointer;border-bottom:1px solid #00000008;justify-content:space-between;align-items:center;padding:1rem 1.5rem;transition:all .2s;display:flex;position:relative}.recipe-item:hover{background:var(--color-cream)}.recipe-item-info{flex-direction:column;flex:1;padding-right:.5rem;display:flex;overflow:hidden}.recipe-item-title{color:var(--color-brown-dark);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.95rem;font-weight:600;overflow:hidden}.recipe-item-date{color:var(--color-brown-med);opacity:.7;font-size:.75rem}.recipe-item-actions{opacity:0;gap:.25rem;transition:all .2s;display:flex;transform:translate(5px)}.recipe-item:hover .recipe-item-actions{opacity:1;transform:translate(0)}.action-icon{cursor:pointer;color:var(--color-brown-med);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.action-icon:hover{color:var(--color-gold);background:#c5a0591a}.action-icon.danger:hover{color:var(--color-error);background:#d32f2f1a}.main-content{flex:1;position:relative;overflow-y:auto}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#2c181080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);text-align:center;border:1px solid #c5a0594d;width:90%;max-width:400px;padding:2rem}.modal-content h3{font-family:var(--font-display);color:var(--color-cocoa);margin-bottom:1rem;font-size:1.5rem}.modal-content p{color:var(--color-brown-med);margin-bottom:1.5rem;font-size:.95rem}.modal-actions{justify-content:center;gap:1rem;display:flex}@media (width<=640px){.app-container{padding:1rem}h1{font-size:2rem}.ingredients-section>div{border-bottom:2px solid var(--color-cream);margin-bottom:1rem;padding-bottom:1rem;grid-template-columns:1fr!important;gap:.5rem!important}}.settings-fab{z-index:1000;background:var(--color-gold);color:#fff;cursor:pointer;width:42px;height:42px;box-shadow:var(--shadow-md);border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;top:1.25rem;right:1.25rem}.settings-fab:hover{box-shadow:var(--shadow-lg);transform:rotate(30deg)scale(1.08)}.settings-overlay{-webkit-backdrop-filter:blur(5px);z-index:2000;background:#0006;justify-content:flex-end;display:flex;position:fixed;inset:0}.settings-panel{background:var(--color-white);width:320px;height:100%;box-shadow:var(--shadow-lg);flex-direction:column;gap:2rem;padding:2rem 1.5rem;display:flex;overflow-y:auto}.settings-header{justify-content:space-between;align-items:center;display:flex}.settings-header h2{font-family:var(--font-display);color:var(--color-cocoa);font-size:1.4rem}.settings-section h3{text-transform:uppercase;letter-spacing:.1em;color:var(--color-brown-med);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.75rem;display:flex}.settings-options{flex-direction:column;gap:.5rem;display:flex}.settings-option{border-radius:var(--radius-sm);color:var(--color-brown-med);cursor:pointer;font-size:.9rem;font-family:var(--font-main);background:0 0;border:1.5px solid #e0d8d0;align-items:center;gap:.6rem;padding:.75rem 1rem;transition:all .15s;display:flex}.settings-option:hover{border-color:var(--color-gold);color:var(--color-cocoa);background:var(--color-cream)}.settings-option.active{border-color:var(--color-gold);background:var(--color-cream);color:var(--color-cocoa);font-weight:600}.app-root{min-height:100vh}.app-root.dark{--color-cocoa:#f0e6da;--color-brown-dark:#e8d5c4;--color-brown-med:#b89880;--color-cream:#2a1e18;--color-white:#1c1410}.app-root.dark body,.app-root.dark{color:#f0e6da;background-color:#1c1410}.app-root.dark .sidebar,.app-root.dark .app-container,.app-root.dark .main-content{background:#1c1410}.app-root.dark .recipe-item{background:#2a1e18;border-color:#c5a05933}.app-root.dark .recipe-item:hover{background:#35261e}.app-root.dark input,.app-root.dark select,.app-root.dark textarea,.app-root.dark .dropdown-toggle{color:#f0e6da!important;background:#2a1e18!important;border-color:#c5a0594d!important}.app-root.dark .dropdown-toggle:hover,.app-root.dark .dropdown-menu{color:#f0e6da!important;background:#35261e!important;border-color:#c5a05966!important}.app-root.dark .dropdown-item:hover{background:#c5a05926!important}.app-root.dark .btn-outline{color:var(--color-gold);border-color:#c5a05966}.app-root.dark .btn-outline:hover{background:#c5a05926}.app-root.dark .totals-section{background:#2a1e18!important;border-color:#c5a05933!important}.app-root.dark .settings-panel{background:#1c1410;border-left:1px solid #c5a05933}.app-root.dark .settings-header h2,.app-root.dark .settings-option{color:#f0e6da}.app-root.dark .settings-option{color:#b89880;background:0 0;border-color:#c5a05940}.app-root.dark .settings-option:hover,.app-root.dark .settings-option.active{border-color:var(--color-gold);color:#f0e6da;background:#2a1e18}.app-root.dark .modal-content{color:#f0e6da;background:#2a1e18}.app-root.dark hr{border-color:#c5a05926}.app-root.dark header img,.app-root.dark .app-container img[alt="Delicious Diamonds Logo"]{filter:brightness(0)invert()opacity(.9)}.app-root.dark .app-container>div[style*=position]>span,.app-root.dark .main-content>div[style*=position]>span{background:#1c1410!important}.app-root.dark .main-content div[style*=border]{color:#f0e6da!important;background:#2a1e18!important;border-color:#c5a05933!important}.app-root.dark .app-container span[style]{color:#b89880!important;background:#35261e!important}.app-root.dark .totals-section span,.app-root.dark .totals-section span[style]{color:inherit!important;background:0 0!important}.app-root.dark .form-group label{color:#b89880}
