/* Shared layout primitives only. No request, account, order or purchase logic. */
.nn-frame,.nn-work{min-width:0}.nn-home .nn-frame,.nn-home .nn-work{display:contents}.nn-home .nn-identity{display:none}
body.nn-inner{--nn-paper:var(--surface,#fff);--nn-accent:var(--accent,var(--forest));--nn-bg:var(--bg,var(--cream));--nn-ink:var(--ink);--nn-rule:var(--line);--nn-gap:28px;--nn-fields:1;--nn-profile:1;--nn-catalog:2;--nn-account:1fr;--nn-radius:0}
.nn-inner .nn-frame{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-areas:'identity work';gap:var(--nn-gap);align-items:start;position:relative}
.nn-inner .nn-work{grid-area:work;position:relative}.nn-inner .nn-identity{grid-area:identity;position:relative;min-width:0;margin:0;padding:22px;border:1px solid var(--nn-rule);background:var(--nn-paper);color:var(--nn-ink)}
.nn-inner .nn-emblem{display:flex;align-items:center;gap:12px;margin-bottom:22px;min-width:0}.nn-inner .nn-emblem>img{width:48px;height:48px;object-fit:contain;flex-shrink:0}.nn-inner .nn-emblem strong{display:block;font:500 20px/1.4 Lora,Georgia,serif;overflow-wrap:anywhere}.nn-inner .nn-emblem small{display:block;font-size:9px;letter-spacing:.14em;margin-top:8px;text-transform:uppercase;color:var(--muted)}
.nn-inner .nn-art{margin:0;display:grid;grid-template-columns:1fr;gap:8px;overflow:hidden}.nn-inner .nn-art img{display:block;width:100%;height:260px;object-fit:cover;object-position:var(--hero-position,center);min-width:0}.nn-inner .nn-art img~img{display:none}
.nn-inner .nn-work :is(.tl-auth,.auth-panel){display:block;max-width:none;margin:0}.nn-inner .tl-auth-aside{display:none}.nn-inner .nn-work .tl-auth>section,.nn-inner .nn-work .auth-panel{background:var(--nn-paper);padding:30px;border:1px solid var(--nn-rule);border-radius:var(--nn-radius)}
.nn-inner .nn-work h1{font-size:clamp(30px,3vw,46px);line-height:1.25;overflow-wrap:anywhere}.nn-inner .nn-work h2{font-size:27px;line-height:1.3}.nn-inner .nn-work h3{line-height:1.4}.nn-inner .nn-work .page-heading h1{margin-bottom:18px}.nn-inner .nn-work .page-heading{border-bottom:1px solid var(--nn-rule);margin-bottom:22px;padding-bottom:16px}
.nn-inner .nn-work :is(.tl-panel,.x_panel,.posts,.fm-detail-news){border-radius:var(--nn-radius)!important;min-width:0}.nn-inner .nn-work .legacy-content{background:transparent;border:0;padding:0;min-height:0;overflow:visible}.nn-inner .nn-work :is(.x_panel,.tl-panel){padding:24px!important;border:1px solid var(--nn-rule)!important;background:var(--nn-paper)!important;margin-bottom:22px!important}.nn-inner .nn-work :is(.x_title,.x_content){float:none!important;width:auto!important;margin:0;min-width:0}.nn-inner .nn-work .x_title h2{margin-top:0}
.nn-inner .nn-work :is(.table-responsive,.tab-content){min-width:0;max-width:100%;overflow-x:auto}.nn-inner .nn-work table{max-width:100%}.nn-inner .nn-work :is(td,th){overflow-wrap:anywhere;vertical-align:middle}.nn-inner .nn-work td a{display:inline-block;min-height:30px;padding:5px 7px}
.nn-inner .nn-work :is(input,select,textarea){min-width:0;max-width:100%}.nn-inner .nn-work :is(.tl-auth,.auth-panel) form{display:grid;grid-template-columns:repeat(var(--nn-fields),minmax(0,1fr));gap:18px;align-items:end}.nn-inner .nn-work :is(.tl-auth,.auth-panel) form>label,.nn-inner .nn-field{margin:0;min-width:0}.nn-inner .nn-field>label{margin:0 0 7px}.nn-inner .nn-field>input{margin:0!important}.nn-inner .nn-work :is(.tl-auth,.auth-panel) form>button{grid-column:1/-1;margin:10px 0 0;width:100%;min-height:48px}
.nn-inner .nn-work .tl-columns{grid-template-columns:repeat(var(--nn-profile),minmax(0,1fr));gap:22px}.nn-inner.nn-page-account .tl-content{display:grid;grid-template-columns:var(--nn-account);gap:0 24px;align-items:start}.nn-inner.nn-page-account .tl-content>span,.nn-inner.nn-page-account .tl-content>h1,.nn-inner.nn-page-account .tl-content>.alert{grid-column:1/-1}.nn-inner.nn-page-account .tl-content>form{min-width:0}.nn-inner.nn-page-account .tl-section-head{display:block}.nn-inner.nn-page-account .tl-section-head>a{margin-top:16px}
.nn-inner.nn-page-account .legacy-content .w3-row{display:grid;grid-template-columns:var(--nn-account);gap:24px}.nn-inner.nn-page-account .legacy-content .w3-col{background:var(--nn-paper)!important;border:1px solid var(--nn-rule);padding:22px!important;min-width:0}.nn-inner.nn-page-account .legacy-content .posts__list{margin-top:18px!important}.nn-inner.nn-page-account .legacy-content form div[style*='margin-left']{margin:0!important;display:flex;gap:10px;flex-wrap:wrap}.nn-inner.nn-page-account .legacy-content .btnBg2{margin:0!important;min-height:44px;padding:12px!important}.nn-inner.nn-page-account .legacy-content form>br{display:none}
.nn-inner .nn-work :is(.tl-shop-grid,.nn-catalog){display:grid;grid-template-columns:repeat(var(--nn-catalog),minmax(0,1fr));gap:22px}.nn-inner .nn-product{background:var(--nn-paper);border:1px solid var(--nn-rule);padding:22px;display:flex;flex-direction:column;gap:14px;min-width:0}.nn-inner .nn-product h3,.nn-inner .nn-product p{margin:0;overflow-wrap:anywhere}.nn-inner .nn-product-image,.nn-inner .tl-item-image{background:var(--nn-bg);height:140px;display:grid;place-items:center}.nn-inner .nn-product-image img{max-width:90px;max-height:100px;object-fit:contain}.nn-inner .nn-product-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:auto}.nn-inner .nn-product-actions a{padding:10px 16px}
.nn-inner .nn-work :is(.tl-account-links,.account-nav,.admin-nav){gap:8px;margin:0 0 24px}.nn-inner .nn-work :is(.tl-account-links,.account-nav,.admin-nav) a{line-height:1.6;white-space:normal;min-height:38px;display:flex;align-items:center;border-radius:0}.nn-inner .nn-work :is(.tl-account-links,.account-nav,.admin-nav) a:hover{outline:1px solid currentColor;outline-offset:1px}
.nn-inner .nn-work .form-horizontal .form-group{display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px;align-items:start;margin:18px 0!important}.nn-inner .nn-work .form-horizontal .form-group:before,.nn-inner .nn-work .form-horizontal .form-group:after{display:none}.nn-inner .nn-work .form-horizontal .form-group>label{width:auto!important;float:none!important;margin:0!important;padding:10px 0!important;text-align:left!important}.nn-inner .nn-work .form-horizontal .form-group>div{width:auto!important;float:none!important;padding:0!important;margin:0!important;min-width:0}.nn-inner .nn-work .form-horizontal .form-group>div:only-child{grid-column:1/-1}.nn-inner .nn-work .form-horizontal .form-group .btn{margin:4px 5px 4px 0}
.nn-inner .nn-work .manual-panel{grid-template-columns:minmax(0,1fr);gap:25px}.nn-inner .nn-work .manual-panel dl{grid-template-columns:1fr;gap:6px}.nn-inner .nn-work .manual-panel dd{margin-bottom:16px}.nn-inner .nn-work .bank-qr{max-width:260px;width:100%;height:auto}.nn-inner .nn-work .article{max-width:none}.nn-inner .nn-work .article p{line-height:1.95}.nn-inner .nn-work .article img{max-width:100%;height:auto}.nn-inner .nn-work :is(.alert,.notice,.tl-note){overflow-wrap:anywhere}.nn-inner .nn-work .tl-dialog{width:min(520px,calc(100vw - 32px));padding:28px;border:2px solid var(--nn-accent);box-shadow:0 20px 80px #0006}.nn-inner .nn-work .tl-dialog .tl-actions{justify-content:space-between}
.nn-inner .nn-work .cke{max-width:100%}.nn-inner .nn-work .cke table{min-width:0}.nn-inner .nn-work .cke td{padding:0}.nn-inner .nn-work .download-panel{background:var(--nn-paper);border:1px solid var(--nn-rule);padding:28px}
/* Ledger cards keep original table cells, actions and values. Added data headings are text only. */
.nn-inner.nn-ledger-cards .nn-data-table{display:block;min-width:0!important}.nn-inner.nn-ledger-cards .nn-data-table>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.nn-inner.nn-ledger-cards .nn-data-table>tbody{display:grid;grid-template-columns:repeat(var(--nn-ledger,1),minmax(0,1fr));gap:16px}.nn-inner.nn-ledger-cards .nn-data-table>tbody>tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--nn-paper);border:1px solid var(--nn-rule);padding:14px;gap:10px}.nn-inner.nn-ledger-cards .nn-data-table>tbody>tr>td{display:block;border:0;padding:4px;min-width:0}.nn-inner.nn-ledger-cards .nn-data-table>tbody>tr>td:before{content:attr(data-heading);display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.nn-inner.nn-ledger-cards .nn-data-table td:last-child{grid-column:1/-1}.nn-inner.nn-ledger-cards .nn-data-table td[colspan]{grid-column:1/-1}
@media(max-width:1100px){body.nn-inner{--nn-gap:18px;--nn-account:1fr;--nn-profile:1;--nn-catalog:2}.nn-inner .nn-frame{grid-template-columns:170px minmax(0,1fr)}.nn-inner .nn-identity{padding:16px}.nn-inner .nn-emblem{display:block}.nn-inner .nn-emblem>img{margin-bottom:12px}.nn-inner .nn-art img{height:200px}.nn-inner .nn-work .form-horizontal .form-group{grid-template-columns:1fr;gap:4px}}
@media(max-width:760px){body.nn-inner{--nn-gap:20px;--nn-fields:1;--nn-profile:1;--nn-account:1fr;--nn-catalog:1;--nn-ledger:1}.nn-inner .nn-frame{display:flex!important;flex-direction:column!important;gap:20px!important;padding:0!important}.nn-inner .nn-identity{width:100%!important;max-width:none!important;position:relative!important;inset:auto!important;margin:0!important;padding:15px!important;transform:none!important;border-radius:0!important;display:flex!important;gap:15px;align-items:center;order:0!important}.nn-inner .nn-emblem{flex:1;margin:0;display:flex;gap:10px}.nn-inner .nn-emblem>img{width:36px;height:36px;margin:0}.nn-inner .nn-emblem strong{font-size:17px}.nn-inner .nn-emblem small{font-size:8px}.nn-inner .nn-art{width:92px!important;flex-shrink:0}.nn-inner .nn-art img{height:80px!important;border-radius:0!important;clip-path:none!important}.nn-inner .nn-art img~img{display:none!important}.nn-inner .nn-work{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;order:1!important;display:block!important}.nn-inner .nn-work :is(.tl-auth>section,.auth-panel,.tl-panel,.x_panel,.download-panel){padding:20px!important}.nn-inner .nn-work h1{font-size:32px}.nn-inner .nn-work h2{font-size:25px}.nn-inner .nn-work :is(.tl-account-links,.account-nav,.admin-nav){display:flex!important;position:static!important;flex-direction:row!important;flex-wrap:wrap!important;writing-mode:horizontal-tb!important;width:auto!important;transform:none!important;margin:0 0 20px!important}.nn-inner .nn-work :is(.tl-auth,.auth-panel) form{grid-template-columns:1fr!important}.nn-inner .nn-work :is(.tl-auth,.auth-panel) form>label{display:block!important}.nn-inner .nn-work :is(.tl-content,.legacy-content){min-width:0}.nn-inner.nn-page-account .tl-content,.nn-inner.nn-page-account .legacy-content .w3-row{display:block!important}.nn-inner .nn-work .tl-columns{grid-template-columns:1fr!important}.nn-inner .nn-work :is(.tl-shop-grid,.nn-catalog){grid-template-columns:1fr!important}.nn-inner .nn-work :is(.tl-product,.nn-product){display:flex!important;flex-direction:column!important}.nn-inner .nn-product-image,.nn-inner .tl-item-image{width:100%!important;height:140px!important;grid-row:auto!important}.nn-inner .nn-work :is(.tl-product-buy,.nn-product-actions){grid-column:auto!important}.nn-inner .nn-work .form-horizontal .form-group{display:block}.nn-inner .nn-work .form-horizontal .form-group>label{padding-bottom:7px!important}.nn-inner .nn-work .article{padding:0!important;border:0!important}.nn-inner .nn-work .nn-data-table:not(.nn-compact){min-width:520px}.nn-inner.nn-ledger-cards .nn-data-table{min-width:0!important}.nn-inner .nn-work .nn-product h3{font-size:22px}.nn-inner .nn-work .legacy-content .w3-col{margin-bottom:20px!important}}

/* Intermediate widths and tables without an existing responsive wrapper. */
.nn-inner .nn-table-scroll{max-width:100%;overflow-x:auto}
@media(min-width:761px) and (max-width:1100px){body.nn-inner{--nn-fields:1!important;--nn-profile:1!important;--nn-account:1fr!important;--nn-catalog:1!important}.nn-admin .tl-rail nav{flex-wrap:wrap;max-width:100%;min-width:0}.nn-admin .tl-rail{min-width:0}}

/* Legacy bulk selection header has no corresponding row controls. */
.nn-inner .nn-work th.bulk-actions{display:none}
@media(min-width:1101px){body.nn-design-scroll.nn-page-account{--nn-account:minmax(0,.65fr) minmax(320px,1.35fr)}}

/* Table text follows its theme instead of Bootstrap white stripes. */
.nn-inner .nn-work .nn-data-table>tbody>tr,.nn-inner .nn-work .nn-data-table>tbody>tr:hover{background:var(--nn-paper);color:var(--nn-ink)}
.nn-inner .nn-work .nn-data-table>tbody>tr>td{background:transparent;color:var(--nn-ink)}

/* Keep filled controls readable on light and dark themes. */
.nn-inner .nn-work :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){background-color:var(--nn-paper)!important;color:var(--nn-ink)!important;border-color:var(--nn-rule)!important}
.nn-inner .nn-work input::placeholder,.nn-inner .nn-work textarea::placeholder{color:var(--muted);opacity:1}
