:root{--background-rgb:250,248,231;--foreground-rgb:24,24,24;--primary-rgb:252,232,131;--accent-rgb:240,178,103;--card-rgb:255,255,255;--border-rgb:229,229,229;--input-rgb:240,240,240;--destructive-rgb:220,53,69;--background:rgb(var(--background-rgb));--foreground:rgb(var(--foreground-rgb));--primary:rgb(var(--primary-rgb));--accent:rgb(var(--accent-rgb));--card:rgb(var(--card-rgb));--border:rgb(var(--border-rgb));--input:rgb(var(--input-rgb));--destructive:rgb(var(--destructive-rgb));--radius:0.75rem}.theme-pink{--background-rgb:253,240,243;--primary-rgb:255,204,229;--accent-rgb:255,153,204}.theme-blue{--background-rgb:237,246,255;--primary-rgb:179,217,255;--accent-rgb:128,191,255}body{color:var(--foreground);background:var(--background);font-family:PT Sans,sans-serif;margin:0}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6,p{margin:0}.container{width:100%;max-width:960px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:9999px;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;background-color:var(--primary);color:var(--foreground);border:none;cursor:pointer;transition:background-color .2s;text-decoration:none;box-shadow:0 4px 12px rgba(0,0,0,.1)}.button:hover{filter:brightness(105%)}.button-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:var(--radius);font-size:1rem;font-weight:500;padding:.75rem 1.5rem;background-color:transparent;color:var(--foreground);border:1px solid var(--border);cursor:pointer;transition:background-color .2s;text-decoration:none}.button-outline:hover{background-color:rgba(var(--accent-rgb),.1)}.button[disabled]{opacity:.5;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}input,textarea{display:flex;width:100%;border-radius:var(--radius);border:1px solid var(--border);background:var(--input);padding:.75rem 1rem;font-size:1rem;color:var(--foreground)}input:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:2px}label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;display:block}.layout-wrapper{display:flex;min-height:100vh;flex-direction:column}.layout-main{flex:1 1;display:flex;flex-direction:column;padding-top:4rem}.toaster-viewport{position:fixed;top:0;z-index:100;display:flex;max-height:100vh;width:100%;flex-direction:column-reverse;padding:1rem}@media (min-width:640px){.toaster-viewport{bottom:0;right:0;top:auto;flex-direction:column;max-width:420px}}.toast{position:relative;display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);padding:1.5rem;box-shadow:0 4px 12px rgba(0,0,0,.1);background-color:var(--background);color:var(--foreground)}.toast.destructive{border-color:var(--destructive);background-color:var(--destructive);color:white}.toast-content{display:grid;grid-gap:.25rem;gap:.25rem}.toast-title{font-size:.875rem;font-weight:600}.toast-description{font-size:.875rem;opacity:.9}.theme-toggle{display:flex;gap:.5rem;padding:.25rem;background-color:var(--input);border-radius:9999px}.theme-button{background:none;border:2px solid transparent;cursor:pointer;padding:0;width:1.75rem;height:1.75rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.theme-button.active{border-color:var(--accent)}.color-swatch{width:1.25rem;height:1.25rem;border-radius:9999px}.color-swatch.yellow{background-color:#FCE883}.color-swatch.pink{background-color:#FFCCE5}.color-swatch.blue{background-color:#B3D9FF}.header{position:fixed;top:0;left:0;right:0;z-index:40;width:100%;border-bottom:1px solid var(--border);background-color:rgba(var(--background-rgb),.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.header-container{height:4rem;justify-content:space-between;padding:0 1rem;max-width:1280px;margin:0 auto}.header-container,.header-left{display:flex;align-items:center}.header-left{gap:1rem}.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit}.logo svg{width:2rem;height:2rem;color:var(--accent)}.logo-text-wrapper{display:flex;flex-direction:column}.logo-text-main{font-weight:700;font-size:1.125rem}.logo-text-sub{font-size:.875rem;color:#666}.header-right{display:flex;align-items:center;gap:.5rem}