/* D-020: №4 / v73. Base visual tokens, spheres, plaques and sheets remain in
   the original inline stylesheet. This file contains current P1/P2 components
   and accessibility/responsive safeguards, not the retired Concept C theme. */
button,a{touch-action:manipulation}
button{cursor:pointer}button:disabled{cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent,#8a6d2c);outline-offset:3px}
input,textarea,select{font-size:16px!important}
/* Never transform ancestors of fixed screens and portals. */
.artem-app>.screen-in{animation:fade-in 360ms ease both;transform:none!important}
.artem-app .btn-send::before{display:none;animation:none}
.artem-app[data-c-screen=consent]>.screen-in,.artem-app[data-c-screen=onboarding]>.screen-in{height:var(--app-h);min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain}
.consent-screen .check-row{text-align:left;color:var(--ink);width:100%;font:inherit;min-height:44px}
.consent-center{flex:0;padding:20px 0;gap:14px}.consent-clock-wrap{padding:12px}.consent-clock-wrap svg{width:128px;height:128px}
.consent-foot,.consent-title,.consent-eyebrow,.consent-meta{animation:none;opacity:1;transform:none}
.consent-title{font:600 26px/1.25 var(--serif)}.consent-eyebrow,.disclaimer-label{font-size:12px;letter-spacing:.08em}
.disclaimer-text{font-size:14px;line-height:1.65}.consent-foot .btn-accept{font-size:14px;letter-spacing:.08em;min-height:48px}
.greet-name{margin:1px 0 0}.greet-eyebrow{font-size:10px;letter-spacing:.13em;color:var(--muted-2)}
.console-bar{flex-wrap:wrap;gap:4px;height:auto;min-height:44px}.console-bar .info-btn{min-width:32px;min-height:32px}.console-bar .cart-btn{min-height:36px}
.console-bar .cart-label{font-size:10px;letter-spacing:.04em}.console-bar{font-size:10px;letter-spacing:.05em}
.saturn-caption .s{font-size:10px;letter-spacing:.1em;color:var(--muted-2)}
.artem-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 16px 8px}
.artem-quick-actions button{min-width:0;min-height:40px;border:1px solid var(--hairline);border-radius:12px;background:linear-gradient(165deg,#fff,#f7f3e9);box-shadow:var(--shadow-soft);color:var(--ink-2);font:500 12px/1.35 var(--sans);padding:8px}
.artem-navigation{position:fixed;top:calc(4px + var(--sa-top));right:max(12px,calc((100vw - var(--maxw,560px))/2 + 12px));z-index:120;max-width:calc(100vw - 24px)}
.artem-navigation summary{list-style:none;cursor:pointer;min-height:40px;padding:10px 12px;border:1px solid var(--hairline);border-radius:12px;background:var(--surface);color:var(--accent);font:500 12px var(--sans);box-shadow:var(--shadow-soft)}
.artem-navigation summary::-webkit-details-marker{display:none}
.artem-navigation nav{padding:8px;margin-top:6px;background:var(--surface);border:1px solid var(--hairline-2);border-radius:14px;box-shadow:var(--shadow-card);display:grid;gap:5px;max-height:calc(var(--app-h) - 90px);overflow:auto}
.artem-navigation button{min-height:44px;background:transparent;color:var(--ink);border:0;text-align:left;border-radius:10px;padding:10px 16px;font-size:14px}
.artem-navigation button[aria-current=page]{background:var(--surface-inset);color:var(--accent)}
.imag-nav,.wing-nav{padding-right:116px;min-height:54px;flex-wrap:wrap;gap:6px}
.imag-nav-back,.wing-nav button{min-height:40px;font-size:11px;letter-spacing:.06em}
.imag-nav .info-btn{min-width:30px;min-height:30px}.imag-nav>span{font-size:11px!important;letter-spacing:.08em!important;line-height:1.4}
.imag-nav>button:not(.imag-nav-back):not(.info-btn){font-size:11px!important;min-height:36px;letter-spacing:.04em!important}
.imag-content{flex-shrink:0}.imag-mode-controls.visible{max-height:300px}
.artem-workspace{position:relative;display:flex;flex:1;min-height:0}
.artem-workspace:has(.imag-empty-phrase){flex:1 0 auto;min-height:clamp(340px,48dvh,470px)}
.artem-workspace .imag-saturn-bg{top:62%}
.imag-msg-btn,.imag-send-btn{min-width:44px;min-height:44px}.imag-chip,.imag-vo-btn,.ios-seg-btn,.sub-pill{font-size:12px;letter-spacing:.04em}
.mode-tile{font-size:12px!important;letter-spacing:.06em!important;min-height:44px}
.btn-send,.btn-primary,.btn-analysis,.btn-submit{min-height:48px;font-size:13px!important;letter-spacing:.1em!important}
.btn-send[hidden]{display:none!important}
.legal-btn{font-size:11px;letter-spacing:.01em;white-space:normal;min-height:40px;padding:8px 4px;color:var(--muted-2)}
.plaque-hint{font-size:10px;letter-spacing:.04em;color:var(--muted-2)}.plaque-label{font-size:12px;letter-spacing:.08em}.fv-sub{font-size:10px;letter-spacing:.04em}
.sheet{max-height:calc(var(--app-h) - 24px - var(--sa-top))}.sheet-inner{padding-bottom:calc(24px + var(--sa-bottom))}
.sheet button,.sheet .btn-close{min-height:44px}.sheet p,.sheet li,.analysis-info .ai-body,.analysis-info .ai-list li{font-size:14px;line-height:1.65}
.sheet small,.sheet-sub{font-size:12px}.sheet-eyebrow{font-size:11px;letter-spacing:.1em}
.modal-body{font-size:15px;line-height:1.7}.modal-body p,.modal-body li{font-size:14px!important;line-height:1.7!important}.modal-nav{min-height:52px;font-size:12px;letter-spacing:.08em}
/* Readable ownership state, never opacity applied to an entire card. */
[data-niche-view]{opacity:1!important;background:var(--surface)!important;box-shadow:var(--shadow-soft);border:1px solid var(--hairline)!important}
[data-niche-view] div[style*="font-size: 9px"],[data-niche-view] div[style*="font-size: 10px"],[data-niche-view] span[style*="font-size: 9px"]{font-size:12px!important;letter-spacing:.03em!important;color:var(--muted-2)!important}
[data-niche-view] button{min-height:44px!important;font-size:12px!important;letter-spacing:.05em!important}
[data-niche-view] button:disabled{opacity:1!important;color:#895454!important}
[data-niche-view] div[style*="font-size: 12.5px"]{font-size:14px!important;line-height:1.65!important}
/* Retain the old cards, but not their 8px metadata and low-contrast timestamps. */
.artem-app[data-c-screen=mylinks] [style*="font-size: 8"],.artem-app[data-c-screen=mylinks] [style*="font-size: 9"],.artem-app[data-c-screen=mylinks] [style*="font-size: 10"]{font-size:12px!important;letter-spacing:.025em!important;line-height:1.6!important;color:var(--ink-2)!important;opacity:1!important}
.artem-app[data-c-screen=mylinks] div[style*="text-transform: uppercase"]{white-space:normal!important}
.artem-app[data-c-screen=mylinks] button{min-height:44px;min-width:44px}
.artem-app[data-c-screen=mylinks] .links-group-head{font-size:12px;letter-spacing:.05em;color:var(--muted-2)}
/* D-016 current shared brand; c-* retained as component identifiers, no C theme. */
.c-effect{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px 8px;max-width:100%;padding:7px 10px;border:1px solid var(--hairline-2);border-radius:9px;background:linear-gradient(150deg,#fffdf7,#f0e3c2);color:var(--accent);font:500 11px/1.4 var(--mono);box-shadow:var(--shadow-soft)}
.c-effect strong,.c-effect>span{white-space:nowrap}.c-effect strong{font-size:12px;letter-spacing:.06em}.c-effect>span{font-size:10px}
.bah-ep-badge{max-width:100%;box-sizing:border-box;white-space:normal}.bah-ep-badge .c-effect{flex-shrink:1;min-width:0}
.c-create-explanation{font-size:11px!important;line-height:1.5!important;letter-spacing:.01em!important;margin:8px 0!important}.c-create-explanation>span{color:var(--accent)!important}
.withdraw-rule-body{min-width:0}.withdraw-rule-sub,.c-grid-recipient{overflow-wrap:anywhere}
.c-brand-tooltip{color:#e9e1d0!important;font:14px/1.65 var(--sans)!important;max-height:calc(100dvh - 64px);overflow:auto;box-sizing:border-box}
.c-brand-tooltip button{color:#f0d8a5!important;min-height:44px;font-size:12px!important;letter-spacing:.08em!important}
.p1-doll-overlay{background:rgba(253,253,253,.97);padding:calc(24px + var(--sa-top)) 16px calc(32px + var(--sa-bottom));display:flex;align-items:flex-start;justify-content:center}
.p1-doll-shell{width:100%;max-width:560px;margin:auto}.p1-doll-ready,.p1-create-flow{background:var(--surface);border:1px solid var(--hairline);border-radius:20px;box-shadow:var(--shadow-card);padding:22px;color:var(--ink)}
.p1-doll-ready h2,.p1-create-flow h2{font:600 28px/1.25 var(--serif)}.p1-doll-ready p,.p1-create-flow p{font-size:14px;line-height:1.65;color:var(--ink-2)}
.p1-source,.p1-eyebrow{font-size:11px;letter-spacing:.06em;color:var(--muted-2)}.p1-stable-url{font-size:13px}.p1-doll-ready small{font-size:12px}
.p1-primary{min-height:48px;font:600 13px/1.5 var(--sans);letter-spacing:.08em;box-shadow:var(--shadow-soft)}
.p1-flow-options button,.p1-flow-options a,.p1-tariffs button{min-height:44px;font-size:13px}.p1-tariffs span{font-size:12px}.p1-error{font-size:14px}.p1-hunter-controls h3{font-size:14px}
.p1-back{min-height:44px;font-size:12px;margin-bottom:12px}.c-doll-context{font:11px/1.5 var(--mono);letter-spacing:.05em;color:var(--muted-2)}
.c-doll-emblem{display:flex;justify-content:center;margin:12px 0}.c-doll-complete{text-align:center;color:#50702c;margin:18px 0}.c-doll-complete span{display:block;font:11px/1.5 var(--mono);letter-spacing:.16em}.c-doll-complete strong{display:block;font:600 14px/1.6 var(--sans);margin-top:6px}
.p1-doll-ready .c-model-note{font-size:12px;line-height:1.65;color:var(--muted-2)}.p1-saved-content{font-size:14px;line-height:1.65}.p1-saved-content summary{min-height:44px;padding:12px 0;cursor:pointer}
/* The existing request-bound Effect process, in the selected gold language. */
.c-wrap-stage{position:relative;display:grid;place-items:center;min-height:250px;width:min(100%,420px);margin:auto;isolation:isolate}
.p1-bah-brand{position:relative;z-index:1;max-width:100%;padding:14px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow-card);animation:p1-bah-pulse 3.2s ease-in-out infinite}
.c-wrap-track{position:absolute;width:90%;height:56%;border:2px solid var(--accent-2);border-radius:22px;animation:artem-wrap 5.6s ease-in-out infinite}
.c-wrap-track::before,.c-wrap-track::after{content:'';position:absolute;inset:12px;border:1px solid var(--accent-2);border-radius:14px;animation:artem-link 2.8s ease-in-out infinite}
.c-wrap-track::after{inset:24px;animation-delay:-1.4s}.c-process-title{font:600 22px/1.4 var(--serif);color:var(--accent);margin:0}.p1-bah-loading{max-width:540px}.p1-bah-loading p{font-size:14px;line-height:1.65}
@keyframes artem-wrap{0%,100%{transform:perspective(600px) rotateY(-12deg) scale(.92);opacity:.45}50%{transform:perspective(600px) rotateY(12deg) scale(1.03);opacity:1}}
@keyframes artem-link{0%,100%{transform:translate3d(-14px,0,0) scaleX(.86);opacity:.18}50%{transform:translate3d(14px,0,0) scaleX(1);opacity:.8}}
/* P2 functionality is unchanged; controls inherit the v73 typographic/gold base. */
.p2-mode-editor,.p2-run-controls,.p2-chronicles,.p2-pending{margin:16px 0;padding:16px;border:1px solid var(--hairline-2);border-radius:16px;background:linear-gradient(160deg,#fff,#fbf8ef);box-shadow:var(--shadow-soft);color:var(--ink);font:400 14px/1.55 var(--sans);text-align:left;overflow-wrap:anywhere}
.p2-mode-options{display:grid;grid-template-columns:1fr;gap:8px}
.p2-mode-editor button,.p2-run-controls button,.p2-chronicles button,.p2-pending button{min-height:44px;padding:10px 14px;color:inherit;border:1px solid var(--hairline-2);border-radius:12px;background:var(--surface);font:600 14px/1.4 var(--sans);white-space:normal}
.p2-mode-options button[aria-pressed=true]{border-color:var(--accent);background:linear-gradient(145deg,#fff9e9,#ead9ac);color:#574017;box-shadow:var(--shadow-press)}
.p2-mode-editor button:disabled,.p2-run-controls button:disabled{opacity:.5}.p2-mode-info p{margin:12px 0;font-size:14px;line-height:1.6}.p2-capability-note{padding:12px;border-left:3px solid var(--accent-2);background:rgba(181,144,74,.08)}
.p2-consent{display:flex!important;gap:12px;align-items:flex-start;min-height:44px;font-size:15px;line-height:1.6;margin:16px 0}.p2-consent input[type=checkbox]{flex:0 0 22px;width:22px;height:22px;min-height:22px;margin-top:3px;accent-color:var(--accent)}
.p2-policy>label{display:block;margin:12px 0}.p2-policy input:not([type=checkbox]){display:block;box-sizing:border-box;width:100%;min-height:46px;margin-top:6px;padding:10px;border:1px solid var(--accent-2);border-radius:10px;background:var(--surface);color:inherit;font-size:16px}
.p2-run-controls>span,.p2-run-controls>small,.p2-chronicles li>span,.p2-chronicles li>b,.p2-chronicles li>time{display:block;margin-top:6px;font-size:14px}
.p2-chronicles{padding:12px}.p2-chronicles ol{list-style:none;margin:12px 0;padding:0}.p2-chronicles li{padding:14px 0;border-top:1px solid var(--hairline-2)}.p2-chronicles code{font-size:12px;word-break:break-all}.p2-chronicles summary{min-height:44px;padding-top:12px;cursor:pointer}
/* Keep complete mode names readable in the 560px Doll shell on every viewport. */
.p2-mode-options button{overflow-wrap:normal;word-break:normal}
@media(max-width:359px){.p1-doll-ready,.p1-create-flow{padding:16px}.p2-mode-editor{padding:12px}.console-bar{padding-left:12px;padding-right:12px}.artem-quick-actions{margin-left:12px;margin-right:12px}}
/* Preserve calm interactions without layout shifts or a second hero animation. */
.artem-quick-actions button,.p2-mode-options button,.p1-primary,.p1-back{transition:transform 160ms ease,opacity 160ms ease}
.artem-quick-actions button:active,.p2-mode-options button:active,.p1-primary:active,.p1-back:active{transform:scale(.975)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.saturn-shell,.consent-clock-wrap,.plaque,.greet-strip,.console-bar,.saturn-caption,.imag-phrase,.ob-screen{opacity:1!important}.p1-bah-brand{animation:none!important}.screen-in{transform:none!important}}
/* D-024: visible even without entrance animations; existing v73 materials/routes. */
.wing-screen .wing-card{opacity:1;min-width:0;min-height:160px;font:inherit;text-align:center;transition:transform 160ms ease}
.wing-screen .wing-card:active{transform:translateY(3px) scale(.98)}
.wing-screen .wc-label{font-size:clamp(15px,4vw,20px);letter-spacing:.06em;overflow-wrap:anywhere}
.wing-screen .wc-sub{font-size:11px;letter-spacing:.04em;line-height:1.5}
.wing-screen .wing-title{font-size:12px;letter-spacing:.14em;color:var(--ink-2)}
.wing-screen .wing-nav{padding-right:116px;gap:8px;flex-wrap:nowrap}.wing-nav>span:last-child{display:none}
.p2-choice{min-width:0;border:0;padding:0;margin:18px 0 24px}
.p2-choice legend{font:600 12px/1.5 var(--sans);letter-spacing:.045em;margin-bottom:10px;color:var(--ink-2)}
.p2-preset-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.p2-preset-options button{min-width:0;min-height:48px;padding:10px 8px;font-size:13px;transition:transform 160ms ease,background 160ms ease}
.p2-preset-options button:last-child:nth-child(odd){grid-column:1/-1}
.p2-preset-options button.p2-wide-option{grid-column:1/-1;overflow-wrap:normal;word-break:normal}
.p2-preset-options button[aria-pressed=true]{background:linear-gradient(145deg,#fff9e9,#ead9ac);border:2px solid var(--accent);color:#574017;box-shadow:var(--shadow-press)}
.p2-preset-options button:active{transform:scale(.98)}
.p2-preset-options button:disabled{opacity:1;background:#f2f0ec;border-color:#ddd7cc;color:#70695d;box-shadow:none}
.p2-choice .p2-choice-info{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--accent-2);font-size:14px;line-height:1.6;background:rgba(181,144,74,.07)}
.p2-choice label{display:block;margin-top:12px;font-size:14px}.p2-behavior{grid-template-columns:1fr}
.p2-capability-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:14px}
.p2-mode-info .p2-free-note{font-size:12px;color:var(--muted-2);line-height:1.6}
@media(prefers-reduced-motion:reduce){.wing-screen .wing-card{opacity:1!important;transform:none!important}}
