/* Lovelle original application code © 2026 Xuân Hoà · Telegram: @HoaNX · Facebook: fb.com/nxh1811. Third-party components retain their own licenses. */
@import url("/library/lovelle-theme.css");
.portal-header{position:sticky;top:0;z-index:20;background:var(--paper);max-width:none;padding-left:max(24px,calc((100vw - 1208px)/2));padding-right:max(24px,calc((100vw - 1208px)/2));gap:24px}.portal-header>.brand{flex-shrink:0}.portal-header nav{gap:24px}.portal-header [aria-current=page]:not(.primary){border-bottom:1px solid var(--ink);padding-bottom:5px}.portal-header nav .primary{padding:10px 22px}.mobile-menu{display:none}.portal-main{max-width:1280px;margin:auto;padding:48px 36px 64px;min-height:65vh}.page-intro{max-width:760px;margin:0 auto 38px;text-align:center;padding:12px 0 20px}.page-intro h1{font:46px/1.16 Georgia,serif;letter-spacing:-1.2px;margin:0 0 20px}.page-lead{font-size:16px;color:var(--muted);line-height:1.8}.portal-main>.collection{border-top:0;padding:0}.portal-main>.collection>.section-title{display:none}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.plan{padding:32px;background:white;border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;align-items:start}.plan.featured{background:#e7eeea;border-color:#82968e}.plan-symbol{display:grid;place-items:center;width:50px;height:50px;background:var(--paper);border-radius:50%;margin-bottom:28px}.plan-symbol svg{width:27px;height:27px;color:#917044}.plan h2{font:32px Georgia;margin:0 0 14px}.plan>.eyebrow{font-size:10px;letter-spacing:1.5px}.price-pending{font:23px Georgia;color:#61777d;padding:14px 0;border-block:1px solid var(--line);width:100%;margin:0}.plan>p:not(.eyebrow):not(.price-pending){font-size:14px;color:var(--muted);min-height:76px}.plan ul{padding:0;list-style:none;margin:10px 0 25px;flex:1}.plan li{font-size:14px;margin:12px 0}.plan li:before{content:'✓';margin-right:10px;color:#597c64}.plan>a{width:100%;text-align:center;justify-content:center;display:block}.portal-note{padding:28px;margin:35px 0 0;border:1px solid var(--line);background:#eef0e9;border-radius:16px;color:var(--muted);font-size:14px}.portal-note h2{font:26px Georgia;color:var(--ink);margin:0 0 10px}.portal-note p{margin:0 0 10px}.my-controls{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.my-controls label{flex:1;max-width:440px}.portal-main label{font-size:13px;display:block;color:var(--muted)}.portal-main input,.portal-main select{display:block;width:100%;min-height:46px;margin:6px 0 0;background:white;color:var(--ink);border:1px solid #bac8c8;border-radius:9px;padding:10px 12px}.draft-date{font-size:12px;color:var(--muted);margin-bottom:17px}.draft-label{display:inline-flex;border-radius:999px;padding:3px 8px;background:#e7eeea;color:#3c6654;font-size:11px;margin-bottom:7px}.empty-state{text-align:center;grid-column:1/-1;padding:60px 20px;border:1px dashed #b9c9c8;border-radius:18px;background:#fff9}.empty-state h2{font:30px Georgia}.empty-state p{color:var(--muted);margin-bottom:25px}.create-flow{border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff8}.steps{padding:0;list-style:none;display:flex;gap:25px;margin:0 0 32px;border-bottom:1px solid var(--line);padding-bottom:22px;color:var(--muted);font-size:14px}.steps li{display:flex;align-items:center;gap:8px}.steps span{width:29px;height:29px;border-radius:50%;background:#e8eeea;display:grid;place-items:center;font-size:11px}.steps [aria-current=step]{color:var(--ink);font-weight:600}.steps [aria-current=step] span{background:var(--ink);color:white}.create-search{display:grid;grid-template-columns:1.8fr 1fr;gap:18px}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0}.choice{border:1px solid var(--line);border-radius:12px;background:white;padding:10px;position:relative}.choice:has(input:checked){border:2px solid var(--ink);padding:9px;box-shadow:0 0 0 3px #dbe5df}.choice img{width:100%;height:190px;object-fit:cover;object-position:top;border-radius:8px}.choice label{color:var(--ink);font-size:14px;cursor:pointer;display:flex;align-items:start;gap:8px;margin-top:12px;min-height:48px}.choice input{width:18px;min-height:18px;height:18px;flex-shrink:0;margin:3px 0 0;accent-color:var(--ink)}.choice .sample-preview{display:block;font-size:12px;text-decoration:underline;padding:10px 0;min-height:44px}.flow-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:28px;border-top:1px solid var(--line);padding-top:22px}.flow-actions p{font-size:14px;color:var(--muted)}button.primary{border:0;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.selected-summary{display:flex;align-items:center;gap:24px;padding:18px;background:#edf1eb;border-radius:12px;margin-bottom:26px}.selected-summary img{width:86px;height:120px;object-fit:cover;object-position:top;border:5px solid white;border-radius:8px}.selected-summary h2{font:25px Georgia;margin:0 0 6px}.selected-summary p{font-size:13px;color:var(--muted)}#details-step{max-width:750px;margin:auto}#details-step>label{margin:20px 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.optional,.field-note{font-size:12px;color:var(--muted)}.field-note{line-height:1.7;margin-top:20px}#create-status,#draft-status{font-size:14px;min-height:22px}.error{color:#9c3446!important}[hidden]{display:none!important}.portal-home-link{margin:25px 0 0;text-align:center}.site-header nav a:hover{color:#806047}
@media(max-width:1000px){.portal-header{padding:16px 24px}.portal-header nav{gap:15px;font-size:12px}.choice-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.portal-header>.portal-nav{display:none}.portal-header{min-height:82px;justify-content:space-between}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;min-height:44px;padding:10px 17px;border:1px solid var(--ink);border-radius:999px;cursor:pointer;font-size:13px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:56px;width:230px;background:white;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 15px 35px #304b5a22;display:flex;flex-direction:column;align-items:stretch;gap:5px}.site-header .mobile-menu nav a{display:block!important;min-height:44px;padding:10px 12px;font-size:14px}.plans{grid-template-columns:1fr}.plan{padding:25px}.plan>p:not(.eyebrow):not(.price-pending){min-height:0}.portal-main{padding:30px 20px 45px}.page-intro{margin-bottom:20px}.page-intro h1{font-size:36px}.my-controls{align-items:stretch;flex-direction:column;gap:15px}.my-controls label{max-width:none}.my-controls .primary{align-self:flex-start}.create-flow{padding:18px}.steps{gap:9px;font-size:11px}.steps li{flex:1;display:block}.steps span{margin-bottom:6px}.choice-grid{grid-template-columns:repeat(2,1fr);gap:12px}.choice img{height:195px}.choice label{font-size:12px;min-height:50px}.create-search{grid-template-columns:1fr}.flow-actions{align-items:stretch;flex-direction:column}.flow-actions button{width:100%}.selected-summary{gap:15px;padding:14px}.selected-summary h2{font-size:22px}.form-row{gap:12px}.portal-note{padding:22px}}
.filterbar{grid-template-columns:1.6fr 1fr 1fr 1fr}.portal-nav a.primary:hover,.mobile-menu nav a.primary:hover{color:white}@media(max-width:760px){.filterbar{grid-template-columns:1fr 1fr}.filterbar label:last-child{grid-column:1/-1}}

.portal-header>.brand{width:190px}.mobile-menu{flex-shrink:0}@media(max-width:800px){.portal-header{gap:12px;padding-inline:20px}}
.filterbar{grid-template-columns:1.6fr 1fr 1fr}.create-search{grid-template-columns:1fr}.has-hover-demo iframe{position:absolute;left:0;top:0;width:390px;border:0;transform-origin:top left;pointer-events:none;opacity:0}.demo-running iframe{opacity:1}.choice-image{position:relative;height:190px;overflow:hidden;border-radius:8px}.choice-image>img{height:100%}.demo-loading .info h3{min-height:58px;margin-top:0}.card-source{display:none}@media(max-width:800px){.choice-image{height:195px}}@media(max-width:760px){.filterbar{grid-template-columns:1fr 1fr}.filterbar label:last-child{grid-column:auto}.search-label{grid-column:1/-1}.info h3{min-height:48px}}@media(prefers-reduced-motion:reduce){.demo-loading }

.portal-main label.search-label{display:flex}.portal-main .search-label input{border:0;padding:0;margin:0;min-height:30px;background:transparent}
.card-response-dialog{border:1px solid #d6dfd9;border-radius:16px;max-width:90vw;width:850px;max-height:80vh;overflow:auto;padding:24px;color:#304c5a}.card-response-dialog::backdrop{background:#10293288}.card-response-dialog td{padding:14px;border-bottom:1px solid #d6dfd9;overflow-wrap:anywhere}.card-response-dialog button,.card-actions button{min-height:44px;padding:10px;border:1px solid #ccd7d4;background:#eef3f0;color:#304c5a;border-radius:7px}.card-actions{flex-wrap:wrap}

/* One-step template picker and in-page demo. */
.create-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;padding:24px;background:#edf0e9;border:1px solid #dce3de;border-radius:18px}.create-filters label{display:grid;gap:8px;color:#627680}.create-filters input,.create-filters select{width:100%;min-height:48px;background:white;border:1px solid #c9d4d6;border-radius:10px;padding:12px}.create-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:24px 0}.create-template-grid .image{position:relative;aspect-ratio:2/3;overflow:hidden}.create-template-grid .image>img{width:100%;height:100%;object-fit:cover;object-position:top}.create-template-grid .tier-badge{position:absolute;right:12px;top:12px;width:38px;height:38px;background:#fffdf5;border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 16px #304c5a22}.tier-badge svg{width:22px;height:22px}.create-template-grid .card-actions>*{min-width:0;flex:1;text-align:center;min-height:44px;border-radius:8px;padding:10px;border:1px solid #304c5a;cursor:pointer;font:inherit}.create-template-grid .demo{background:white;color:#304c5a}.create-template-grid .open{background:#304c5a;color:white}.template-demo-dialog{width:min(1000px,94vw);max-height:92vh;padding:0;border:1px solid #d5dfdc;border-radius:20px;background:#faf8f1;color:#304c5a}.template-demo-dialog::backdrop{background:#17252dcc;backdrop-filter:blur(5px)}.demo-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid #dce3de}.demo-dialog-header h2{font-size:22px;margin:0}.demo-dialog-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,1fr);height:72vh}.demo-dialog-body iframe{width:100%;height:100%;border:0;background:white}.demo-dialog-body aside{padding:36px;display:flex;flex-direction:column;justify-content:center;gap:20px}.demo-dialog-body aside p{line-height:1.8}.demo-dialog-body aside a,.demo-dialog-body aside button{text-align:center;min-height:48px}.create-catalog .page-intro{margin-bottom:32px}@media(max-width:1000px){.create-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.create-filters{grid-template-columns:1fr;padding:16px;gap:12px}.create-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.create-template-grid .info{padding:14px}.create-template-grid h3{font-size:18px}.create-template-grid .card-actions{gap:6px}.demo-dialog-body{grid-template-columns:1fr;height:75vh;overflow:auto}.demo-dialog-body iframe{height:55vh}.demo-dialog-body aside{padding:20px;gap:12px}.demo-dialog-header{padding:12px}.demo-dialog-header h2{font-size:18px}}
