:root{--paper:#f5f1e9;--ink:#293d32;--muted:#6b776c;--accent:#b5714d;--line:#d9d9cb;--green:#345743}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif}.page{max-width:1200px;padding:28px 30px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:23px;gap:15px}.brand{font:700 11px Trebuchet MS,Helvetica,sans-serif;letter-spacing:.15em;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:12px}.brandmark{font-size:32px;color:var(--accent);line-height:1}.header-actions{display:flex;gap:15px}button,input,.primary,.muted,.eyebrow,.tabs,.canvas-caption,.message,footer,progress,.small,label{font-family:Trebuchet MS,Helvetica,sans-serif}button,.primary{cursor:pointer}button{font-size:13px;color:var(--ink)}.text-button{background:none;border:0;padding:9px 0;text-decoration:underline;text-underline-offset:4px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:var(--accent);margin:0 0 17px}h1{font-size:clamp(44px,6.3vw,76px);font-weight:400;line-height:1.04;letter-spacing:-.045em;margin:0}h1 em{color:#799378;font-weight:400}h2{font-weight:400;font-size:27px;letter-spacing:-.02em}p{line-height:1.6}.muted{color:var(--muted);font-size:14px}.small{font-size:12px;line-height:1.5}.intro{max-width:400px;font-size:18px;color:var(--muted);line-height:1.65}.login-view{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;padding:90px 0 70px;align-items:center}.login-form{padding:24px 0 24px 32px;border-left:1px solid var(--line)}label{display:block;font-size:13px;font-weight:700;margin:0 0 20px}input:not([type=file]):not([type=range]){display:block;width:100%;background:#fcfaf5;border:1px solid #bec8b9;padding:14px 12px;margin-top:8px;font:16px Trebuchet MS,sans-serif;border-radius:0;color:var(--ink)}input[type=range]{display:block;width:100%;margin-top:14px;accent-color:var(--green)}.primary{border:0;background:var(--green);color:#fcfaf5;padding:16px 19px;display:flex;justify-content:space-between;align-items:center;gap:22px;font-size:13px;font-weight:700;text-decoration:none}.primary span{font-size:20px;line-height:1}.primary:disabled,button:disabled{opacity:.5;cursor:wait}.login-form .primary,.controls .primary{width:100%}.album-head{padding:55px 0 26px;display:flex;justify-content:space-between;align-items:center;gap:30px}.album-head .muted{margin:12px 0 0}.tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:28px}.tabs button{border:0;background:none;padding:15px 0;font-weight:700;border-bottom:2px solid transparent;color:var(--muted)}.tabs button.selected{border-color:var(--green);color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}.photo img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#e1e4d8}.photo h3{font-size:18px;font-weight:400;margin:12px 0 4px;overflow-wrap:anywhere}.photo-info{display:flex;align-items:center;justify-content:space-between;gap:10px}.photo-info p{font:11px Trebuchet MS,sans-serif;color:var(--muted);margin:0}.photo-info button{border:0;background:none;padding:8px 0;color:var(--accent);font-size:12px;text-decoration:underline;text-underline-offset:3px}.empty{text-align:center;padding:70px 20px;max-width:460px;margin:auto;color:var(--muted)}.empty>span{font-size:50px;color:#94a78d}.empty h2{color:var(--ink);margin-bottom:8px}.empty p{font:14px/1.6 Trebuchet MS,sans-serif}footer{border-top:1px solid var(--line);margin-top:70px;padding-top:20px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.05em}.message{min-height:23px;font-size:13px;color:var(--accent);margin:10px 0}.back{margin-top:22px}.editor-head{padding:24px 0 30px}.editor-head h1{font-size:clamp(36px,4.5vw,53px)}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:35px;align-items:start}canvas{display:block;width:100%;aspect-ratio:16/9;background:#17221d;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.canvas-caption{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em;color:var(--muted);margin:10px 0}.mode-buttons{display:flex;margin-bottom:26px;border:1px solid var(--line)}.mode-buttons button{flex:1;border:0;padding:12px 8px;background:transparent;font-size:12px}.mode-buttons .selected{background:var(--green);color:#fcfaf5}.tools{display:flex;justify-content:space-between;margin-bottom:26px;gap:15px}.tools button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:8px 0}.file-input{position:absolute;opacity:0;width:1px;height:1px}progress{width:100%;height:8px;margin-top:16px;accent-color:var(--accent)}#settings{max-width:420px;padding:10px 0}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}@media(max-width:800px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.login-view{gap:40px}.editor-layout{grid-template-columns:1fr}.controls{max-width:600px}.editor-head{padding-bottom:20px}}@media(max-width:560px){.page{padding:20px}.brand{font-size:9px;letter-spacing:.12em;gap:7px}.brandmark{font-size:27px}.header-actions{gap:12px}.text-button{font-size:11px}.login-view{grid-template-columns:1fr;padding:46px 0 20px;gap:20px}.login-form{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.album-head{padding-top:34px;align-items:start;gap:15px}.album-head h1{font-size:44px}.picker{font-size:11px;padding:13px 10px;gap:10px;white-space:nowrap;margin-top:23px}.gallery{gap:26px 14px}.photo h3{font-size:16px}.photo-info{align-items:start}.photo-info p{font-size:10px;line-height:1.5}.tabs{gap:24px}.tabs button{font-size:12px}.editor-layout{gap:20px}footer{margin-top:44px;font-size:9px}.intro{font-size:16px}.eyebrow{font-size:9px}}
