:root{font-family:"Avenir Next",Avenir,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20211f;background:#f5f1e9;--ink:#20211f;--ivory:#f5f1e9;--coral:#e88770;--line:#ddded5;--muted:#767770;--white:#fffefb;color-scheme:light}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:inherit;text-underline-offset:4px}button{border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:var(--white);min-height:44px;padding:10px 17px;font-size:13px;font-weight:600}.secondary{color:var(--ink);background:transparent;border-color:var(--line)}.quiet{background:transparent;color:var(--muted);border:0;padding:5px;font-weight:400}.brand{display:flex;align-items:center;gap:14px}.brand img{width:174px;height:auto}.brand span{border-left:1px solid var(--line);padding-left:14px;font-size:15px;font-weight:500}.starting{padding:70px;max-width:600px;margin:auto}.starting img{width:210px}.starting p,.muted{color:var(--muted)}.auth{max-width:1080px;margin:auto;min-height:100svh;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:60px 36px}.auth .brand{grid-column:1/-1;align-self:start}.intro{align-self:start;padding-top:60px}.intro h1{font-size:clamp(38px,5vw,62px);line-height:1.08;letter-spacing:-2.5px;font-weight:500;margin:0 0 25px}.intro p{font-size:17px;line-height:1.7;color:var(--muted);max-width:380px}.intro .workflow{font-size:13px;border-top:1px solid var(--line);margin-top:40px;padding-top:22px}.auth-panel{background:var(--white);padding:34px 36px;border:1px solid var(--line);border-radius:8px;align-self:start}.auth-panel h2{font-size:25px;margin:0 0 10px;letter-spacing:-.6px}.auth-panel p{font-size:13px;color:var(--muted);line-height:1.6}.form{display:grid;gap:18px;margin-top:25px}.field{display:grid;gap:7px;font-size:13px;font-weight:500}.field input,.field select{width:100%;min-height:44px;border:1px solid #c9ccc2;border-radius:4px;background:var(--white);color:var(--ink);padding:10px 12px;font-size:14px;font-weight:400}.field small{font-size:12px;font-weight:400;line-height:1.5;color:var(--muted)}.checks{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6}.checks input{margin-top:4px;accent-color:var(--ink)}.app-shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100svh}.rail{padding:34px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:32px;background:var(--ivory)}.rail .brand{display:block}.rail .brand img{width:183px}.rail .brand span{display:block;border:0;padding:12px 0 0 47px;font-size:14px}.rail nav{display:flex;flex-direction:column;gap:5px}.rail nav button{text-align:left;background:transparent;border-color:transparent;color:var(--muted);font-size:14px;font-weight:500;padding:11px 14px}.rail nav button.active{background:#e9e8df;color:var(--ink)}.rail-bottom{margin-top:auto;font-size:12px;color:var(--muted);line-height:1.7}.rail-bottom a{display:block;margin:6px 0}.workspace{background:var(--white);min-width:0}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:20px 36px;font-size:13px}.topbar select{max-width:340px;background:transparent;border:0;font:inherit;font-size:15px;font-weight:500;cursor:pointer}.topbar .account{color:var(--muted);font-size:12px}.content{padding:40px 36px 60px;max-width:1200px;margin:auto}.heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:30px}.heading h1{font-size:32px;letter-spacing:-1.1px;font-weight:500;margin:0 0 9px}.heading p{font-size:14px;color:var(--muted);margin:0;line-height:1.6}.event-row{display:grid;grid-template-columns:80px 1fr auto;gap:24px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}.event-row .date{font-size:13px;color:var(--muted)}.event-row h2{margin:0 0 6px;font-size:19px;letter-spacing:-.4px;font-weight:500}.event-row p{margin:0;font-size:13px;color:var(--muted)}.tag{font-size:12px;color:var(--muted);padding:6px 10px;background:var(--ivory);border-radius:3px}.empty{padding:65px 0 75px;border-top:1px solid var(--line);max-width:650px}.empty h2{font-weight:500;font-size:23px;letter-spacing:-.5px;margin:0 0 14px}.empty p{color:var(--muted);line-height:1.8;font-size:14px;max-width:470px}.empty button{margin-top:14px}.editor{max-width:680px}.editor .form{gap:22px}.editor h2{font-weight:500;font-size:19px;padding:24px 0 0;border-top:1px solid var(--line);margin:8px 0 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.actions{display:flex;gap:12px;margin-top:8px;align-items:center}.note{background:var(--ivory);border-left:3px solid var(--coral);padding:16px 20px;font-size:13px;line-height:1.7;margin:24px 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-weight:400;padding:0 16px 16px 0;white-space:nowrap}td{padding:20px 16px 20px 0;border-top:1px solid var(--line);white-space:nowrap;vertical-align:middle}td:last-child,th:last-child{padding-right:0}.amount{font-variant-numeric:tabular-nums;text-align:right}.stat-line{display:flex;gap:32px;margin:25px 0 35px;flex-wrap:wrap}.stat-line span{font-size:12px;color:var(--muted)}.stat-line strong{display:block;font-size:24px;font-weight:500;color:var(--ink);margin:7px 0}.device-code{letter-spacing:1px;font-variant-numeric:tabular-nums;font-size:20px!important}.device-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.device-row p{color:var(--muted);font-size:12px}.settings-list{max-width:720px}.settings-list section{padding:25px 0;border-top:1px solid var(--line)}.settings-list h2{font-size:20px;font-weight:500;margin:0 0 12px}.settings-list p{font-size:14px;line-height:1.7;color:var(--muted)}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(600px,90vw);background:var(--ink);color:white;padding:14px 20px;border-radius:5px;font-size:13px;box-shadow:0 5px 20px #0002;z-index:10}#notice.error{background:#733e31}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.field input:focus-visible,.field select:focus-visible{outline-offset:1px}@media(max-width:850px){.auth{gap:25px;grid-template-columns:1fr;padding:32px 24px}.intro{padding-top:0}.intro h1{max-width:450px}.intro .workflow{display:none}.auth-panel{max-width:500px;width:100%;padding:26px}.app-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.rail{border-right:0;border-bottom:1px solid var(--line);padding:20px 24px;gap:18px}.rail .brand{display:flex}.rail .brand img{width:155px}.rail .brand span{padding:0 0 0 12px;border-left:1px solid var(--line)}.rail nav{flex-direction:row;overflow:auto;gap:0}.rail nav button{padding:10px 12px;white-space:nowrap;font-size:13px}.rail-bottom{display:none}.topbar{padding:18px 24px}.account{max-width:150px;overflow:hidden;text-overflow:ellipsis}.content{padding:30px 24px}.heading{align-items:flex-start}.heading h1{font-size:28px}.event-row{grid-template-columns:55px 1fr;gap:18px}.event-row .tag{grid-column:2;justify-self:start}.event-row button{grid-column:2;justify-self:start}.two{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.contact-rule {display:flex;justify-content:space-between;gap:20px;}

.gallery-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;} .gallery-grid figure {margin:0;} .gallery-grid img {width:100%;max-height:460px;object-fit:contain;background:#20211f;} .gallery-grid figcaption {display:flex;justify-content:space-between;gap:12px;padding:12px 0;font-size:13px;} .gallery-grid figcaption span {color:#777;} .gallery-placeholder {height:200px;background:#e8e6e2;display:grid;place-items:center;color:#777;}

.installer-button {display:block;text-align:center;background:#20211f;color:#fff;border-radius:6px;text-decoration:none;padding:16px;margin:24px 0;font-weight:500;}

.csv-download {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:44px;padding:12px 20px;background:var(--ink);color:#fff;border-radius:4px;font-size:13px;text-decoration:none;white-space:nowrap;}
