:root{--primary:#216454;--ink:#173b36;--muted:#64746d;--line:#dce5df;--paper:#f5f7f4;--surface:#fff;--surface-soft:#edf4ef;--field-border:#cad7d0;--hover:#edf4ef}html[data-theme=dark]{--ink:#e6f0eb;--muted:#a7b9b0;--line:#34473f;--paper:#0f1714;--surface:#17211d;--surface-soft:#203029;--field-border:#445a50;--hover:#263a32}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Tahoma,Leelawadee UI,Arial,sans-serif;font-size:16px;line-height:1.65;transition:background-color .2s,color .2s}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);color:var(--ink);background:var(--surface);border-radius:8px;padding:9px 14px;font-size:14px}button:hover{background:var(--hover)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button.primary:hover{filter:brightness(.92)}input,textarea,select{border:1px solid var(--field-border);background:var(--surface);width:100%;min-width:0;color:var(--ink);border-radius:7px;padding:10px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline-offset:1px;outline:2px solid #6fa897}:focus-visible{outline-offset:3px;outline:3px solid #c18a29}.portfolio{min-height:100vh}.portfolio.serif{font-family:Georgia,Times New Roman,serif}.site-header{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:24px;padding:28px 5%;display:flex}.brand{letter-spacing:1.5px;align-items:center;gap:16px;font-weight:700;display:flex}.brand-mark{background:var(--primary);color:#fff;border-radius:12px;place-items:center;width:58px;height:58px;font-size:27px;display:grid;position:relative}.brand-mark span{color:#e9c179;font-size:10px;position:absolute;top:0;right:8px}.brand small{letter-spacing:0;color:var(--muted);margin-top:3px;font-size:13px;font-weight:400;display:block}.site-header nav{flex-wrap:wrap;gap:30px;font-size:15px;display:flex}.site-header nav a{padding:9px 0}.site-header nav a[aria-current]{border-bottom:2px solid var(--primary);color:var(--primary);font-weight:700}.portfolio main{margin:auto;padding:44px 28px 80px}.page-kicker{letter-spacing:2px;color:var(--primary);justify-content:space-between;gap:16px;padding:0 0 28px;font-size:13px;display:flex}.page-kicker span:last-child{letter-spacing:0}.block-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.block-cell{min-width:0}.content-block{overflow-wrap:anywhere;height:100%}.content-block h2,.content-block p{font-size:inherit;font-weight:inherit;white-space:pre-wrap;margin:0;line-height:1.5}.content-block img{max-width:100%;display:block}.content-link{text-underline-offset:6px;text-decoration:underline;display:inline-block}.image-empty{background:var(--surface-soft);min-height:160px;color:var(--muted);place-items:center;font-size:16px;display:grid}.portfolio footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:24px;padding:30px 5%;font-size:14px;display:flex}.demo-banner{text-align:center;background:#fff1ce;padding:5px;font-size:14px}.login-page{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-story{color:#fff;background:#153e35;flex-direction:column;justify-content:space-between;min-height:100vh;padding:60px 12%;display:flex}.login-brand{letter-spacing:2px;font-size:24px;font-weight:700}.login-brand span,.editor-logo>span{color:#ccad69}.login-story h1{margin:20px 0;font-size:clamp(40px,4.5vw,72px);font-weight:500;line-height:1.45}.login-story em{color:#dfc797;font-style:normal}.login-story p,.login-story small{color:#b2c6bc}.login-form{background:var(--paper);place-items:center;padding:40px;display:grid}.login-form form{width:100%;max-width:380px}.login-form h2{margin:10px 0;font-size:30px}.login-form p{color:var(--muted);margin-bottom:32px}.eyebrow{color:var(--primary);font-size:14px}.login-form label{margin-bottom:20px;font-size:14px;display:block}.login-form input{margin-top:8px;padding:13px}.login-form .primary{width:100%;margin:8px 0 24px;padding:14px}.login-form form>a{color:var(--muted);font-size:14px}.error{color:#a33333!important}.error-card{max-width:680px;margin:15vh auto;padding:32px}.editor{background:var(--paper);min-height:100vh}.editor-header{background:var(--surface);border-bottom:1px solid var(--line);z-index:20;align-items:center;gap:24px;min-height:76px;padding:14px 24px;display:flex;position:sticky;top:0}.editor-logo{white-space:nowrap;font-size:24px;font-weight:800}.editor-logo small{letter-spacing:3px;margin-left:10px;font-size:13px;font-weight:400}.save-status{color:var(--muted);flex:1;font-size:12px}.toolbar{flex-wrap:wrap;gap:8px;display:flex}.editor-message{background:#fff3d6;justify-content:space-between;gap:20px;padding:12px 24px;display:flex}.editor-message button{padding:0 10px}.editor-body{grid-template-columns:230px minmax(0,1fr) 290px;min-height:calc(100vh - 76px);display:grid}.left-panel,.right-panel{background:var(--surface);min-width:0}.left-panel{border-right:1px solid var(--line);padding:18px 14px}.right-panel{border-left:1px solid var(--line)}.panel-heading{color:var(--muted);justify-content:space-between;align-items:center;padding:14px 4px;font-size:13px;font-weight:700;display:flex}.panel-heading button{padding:0 8px;font-size:20px}.page-row{border-radius:7px;display:flex}.page-row button{background:0 0;border:0}.page-row.active{color:var(--primary);background:#e5eee8}.page-select{text-align:left;text-overflow:ellipsis;flex:1;overflow:hidden}.page-row>button:last-child{padding:8px}.block-palette{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;display:grid}.block-palette button{gap:5px;padding:12px 4px;font-size:13px;display:grid}.block-palette strong{font-family:Georgia,serif;font-size:21px;font-weight:400}.layers{gap:4px;display:grid}.layers button{text-align:left;text-overflow:ellipsis;white-space:nowrap;border:0;font-size:13px;overflow:hidden}.layers button.selected{background:#e5eee8}.layers span{color:#8da296;padding-right:12px}.settings-button{text-align:left;width:100%;margin-top:32px}.workspace{min-width:0;padding:22px}.canvas-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;font-size:14px;display:flex}.canvas-toolbar small{color:var(--muted)}.canvas-toolbar button{padding:6px 10px;font-size:12px}.canvas-toolbar button.active{background:#dae7dd}.canvas{width:100%;margin:auto;transition:max-width .2s;box-shadow:0 4px 25px #183b3509;container-type:inline-size}.canvas.mobile{max-width:390px}.edit-canvas{min-height:650px;padding:24px}.canvas-page-title{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;margin-bottom:30px;padding-bottom:20px;font-size:14px;font-weight:700;display:flex}.canvas-page-title small{color:var(--muted);font-size:12px;font-weight:400}.editable-block{outline:1px dashed #c1cec5;min-height:25px;position:relative}.editable-block.selected{z-index:2;outline:2px solid #377b65}.block-select-overlay{z-index:1;border:0;border-radius:0;width:100%;height:100%;position:absolute;inset:0;background:0 0!important}.block-actions{color:#fff;white-space:nowrap;z-index:3;background:#216454;border-radius:6px 6px 0 0;align-items:center;gap:3px;padding:3px;font-size:12px;display:flex;position:absolute;bottom:100%;right:0}.block-actions span{padding:0 7px}.block-actions button{color:#fff;background:0 0;border:0;padding:1px 5px;font-size:12px}.block-actions button:hover{background:#fff3}.canvas-hint{color:var(--muted);text-align:center;margin-top:20px;font-size:12px}.inspector-tabs{border-bottom:1px solid var(--line);gap:3px;padding:12px 8px;display:flex}.inspector-tabs button{border:0;flex:1;padding:7px 8px;font-size:13px}.inspector-tabs button.active{color:var(--primary);background:#e5eee8}.inspector{border:0;min-width:0;margin:0;padding:20px}.inspector h3{margin:0 0 20px;font-size:17px}.inspector h4{border-top:1px solid var(--line);margin:24px 0 16px;padding-top:20px;font-size:13px}.field{color:#52655a;margin-bottom:16px;font-size:13px;display:block}.field input,.field select,.field textarea{margin-top:6px;padding:8px;font-size:14px}.field-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.color-field{border:1px solid var(--line);border-radius:7px;align-items:center;gap:10px;margin-top:6px;padding:5px 8px;display:flex}.color-field input{border:0;width:30px;height:28px;margin:0;padding:0}.color-field span{font-size:12px}.checkbox-field{align-items:center;gap:10px;font-size:14px;display:flex}.checkbox-field input{width:18px}.muted,.inspector>small{color:var(--muted);font-size:13px}.danger{color:#ac3737;border-color:#edc5c5}.inspector-empty{color:var(--muted);text-align:center;padding:40px 0;font-size:14px}.empty-canvas{text-align:center;color:var(--muted);padding:90px 20px}.empty-canvas h2{font-size:24px}.canvas .portfolio{min-height:650px}.canvas .site-header{flex-wrap:wrap;padding:20px}.canvas .site-header nav{gap:15px;font-size:13px}.canvas .portfolio main{padding:25px 20px}.canvas .brand-mark{width:40px;height:40px;font-size:20px}.canvas .brand{font-size:14px}.canvas .portfolio footer{padding:20px;font-size:12px}.theme-toggle{z-index:100;border:1px solid var(--line);width:44px;height:44px;color:var(--ink);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;top:16px;right:16px;box-shadow:0 6px 24px #10251e24}.theme-toggle:hover{background:var(--hover);transform:translateY(-1px)}.theme-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.theme-icon-sun,html[data-theme=dark] .theme-icon-moon{display:none}html[data-theme=dark] .theme-icon-sun{display:block}.site-header,.editor-header{padding-right:78px}html[data-theme=dark] .portfolio{background:var(--paper)!important}html[data-theme=dark] .content-block{color:color-mix(in srgb, var(--block-color) 28%, #f4fbf7 72%)!important;background:color-mix(in srgb, var(--block-background) 22%, var(--surface) 78%)!important;border-color:color-mix(in srgb, var(--block-border) 35%, var(--line) 65%)!important}html[data-theme=dark] .content-block hr{border-color:var(--line)!important}html[data-theme=dark] .canvas,html[data-theme=dark] .edit-canvas{box-shadow:0 4px 25px #0004;background:var(--surface)!important}html[data-theme=dark] .page-row.active,html[data-theme=dark] .layers button.selected,html[data-theme=dark] .inspector-tabs button.active,html[data-theme=dark] .canvas-toolbar button.active{background:var(--surface-soft)}html[data-theme=dark] .editor-message,html[data-theme=dark] .demo-banner{color:#f8e7ba;background:#473a1d}html[data-theme=dark] .error{color:#faa!important}@container (max-width:550px){.block-cell{grid-column:span 12!important}.canvas-page-title{flex-direction:column}.content-block{max-width:100%}.site-header nav{flex-wrap:wrap}.portfolio footer{flex-direction:column}.edit-canvas{padding:16px}}@media (max-width:1100px){.editor-body{grid-template-columns:190px minmax(0,1fr) 250px}.workspace{padding:16px}.editor-header{gap:12px}.save-status{display:none}.toolbar{margin-left:auto}.inspector{padding:15px}}@media (max-width:760px){.site-header{flex-direction:column;align-items:flex-start;padding:22px}.site-header nav{gap:20px;font-size:14px}.portfolio main{padding:28px 18px 48px}.portfolio .block-cell{grid-column:span 12!important}.portfolio .content-block{padding:min(24px,5vw)!important}.portfolio footer{flex-direction:column;padding:24px}.login-page{grid-template-columns:1fr}.login-story{min-height:auto;padding:28px}.login-story>div,.login-story>small{display:none}.login-form{padding:50px 24px}.editor-header{flex-wrap:wrap;padding:12px;position:static}.toolbar{margin-left:0}.editor-body{grid-template-columns:1fr}.left-panel{border-bottom:1px solid var(--line)}.page-list{flex-wrap:wrap;display:flex}.block-palette{grid-template-columns:repeat(6,1fr)}.layers,.left-panel .panel-heading:nth-of-type(3){display:none}.settings-button{margin-top:12px}.workspace{order:2;padding:12px}.right-panel{border-bottom:1px solid var(--line);order:1}.inspector{max-height:360px;overflow:auto}.edit-canvas{padding:14px}.canvas-toolbar{flex-wrap:wrap}.block-actions{white-space:normal;max-width:100%}.canvas-page-title small{display:none}}
